一 数学定义的函数与Python中的函数                                         

 

数学函数的定义:一般在一个变化过程中,如果有两个变量,X,Y,并且对于x的每一个确定值,y都有唯一与之对应的值,那么我们把x称为自变量,y为因变量,y为x的函数。x的取值范围就是函数的定义域。   如 : y = x + 5

 

python中函数的定义:函数是逻辑结构化和过程化的编程方法。

 

为什么要有函数呢?

  • 代码可重用
  • 保持一致性
  • 可扩展性

python中函数定义的方法:

1 def test(x,y):
2     res = x + y
3     return res
  • def:定义函数的关键字
  • test:函数名
  • ():内可定义形参
  • res = x + y :代码块
  • return:返回值

补充:编程中的函数和数学意义上的函数是截然不同的概念,编程中的函数为完成一定功能的逻辑,数学定义的函数是一个等式。

二 函数,过程,返回值

 

过程的定义:过程就是简单特殊没有返回值的函数

 1  def test1(x,y):
 2      res = x + y
 3      print(res)   
 4      
 5  def test2(x,y):
 6      res = x + y
 7      print(res)    
 8      return res
 9 
10 print(test1(1,2))
11 print(test2(1,2))

总结:当一个函数没有用return时,python解析器会隐式的返回None,所以python中过程也是函数。

 1 def test1():
 2     pass
 3 
 4 def test2():
 5     return 1
 6 
 7 def test3():
 8     return 1,2,3,"abc"
 9 
10 print(test1())
11 print(test2())
12 print(test3())

终结:

  • 返回值数=0:返回None
  • 返回值数=1:返回object
  • 返回值数>1:返回tuple

三 函数的参数

形参和实参

  • 形参:形参变量只有在被调用时才被分配内存单元,在调用结束时,立即释放所分配的内存单元。因此,形参只在函数内部有效,函数调用结束返回主调函数后不能继续使用该形参。
  • 实参:实参可以是常量,变量,表达式,函数等,在进行函数调用时,它们必须要有却定的值(要有定义),以便把值传给形参。 
1 def test(x,y):   #x,y为形参
2     res = x + y
3     return res
4 
5 a = 1
6 b = 2
7 c = test(a,b) #a,b为实参
8 print(c)

x,y为形参
a,b为实参

 

可变长参数

1 def test(x,y={1:2},z=15,*args,**kwargs):
2     print(x)
3     print(y)
4     print(z)
5     print(args)
6     print(kwargs)
7 
8 test(1,2,3,4,5,[6,5],*[5,6],**{"sdf":2,"abc":2})
输出:
print(x):1
print(y):2
print(z):3
print(args):(4, 5, 6, 5, [5, 6])
print(kwargs):{'sdf': 2, 'abc': 2}
  • x,y,z:单个参数名必须放前面
  • y,z:默认值参数必须放在没赋值参数后面
  • *args:必须放在以上参数后面,里面装的是传进来多的参数,然后组成元组
    • 参数不加*,默认将参数当成整体传入
    • 参数前加*,将参数遍历出来传入
  • **kwargs:必须放在以上参数后面,参数前面加入**,表示传入字典,将传入的元素组成字典

 函数的定义和参数的传入都必须遵循上面规则。

 

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!