python函数

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。


定义一个函数

你可以定义一个由自己想要功能的函数,以下是简单的规则:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
  • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
    在这里插入图片描述

语法

def functionname( parameters ):
   "函数_文档字符串"
   function_suite
   return [expression]

基础用法

>>> def add(x,y):    #定义函数
	r= x+y
	return r

>>> add(2,3)         # 添加参数调用
5
>>> add('xian','yu')
'xianyu'

函数调用

# 按照位置提供参数
>>> def foo(x,y):   
	print('x=',x)
	print('y=',y)	
>>> foo(2,3)
x= 2
y= 3

# 指明参数名称,与顺序无关
>>> foo(x=2,y=3)
x= 2
y= 3
>>> foo(y=3,x=2)
x= 2
y= 3

# 设置参数的默认值 注意含有默认值的参数要放到参数最后,放到前面就报错啦
>>> def bar(x,y=3):
	print('x=',x)
	print('y=',y)	
>>> bar(2)
x= 2
y= 3

>>> b=bar(2)
x= 2
y= 3

返回值return

作用:终止运行,跳出当前函数体,把值返回函数调用位置


return默认返回值是 None 
>>> def bar(x,y=3):
	print('x=',x)
	print('y=',y)
>>> b=bar(2)	
>>> print(b)
None
# 返回一个值
>>> def my_fun():
	return 1
# 返回多个值
>>> def my_fun():
	return 1,2,3
>>> r=my_fun()
>>> r
(1, 2, 3)

参数收集

  • 一个“*”作用
# 它接收元组作为位置参数,即收集到多余的参数是会把它们以元祖的形式收集起来
>>> a,b,c=my_fun()
>>> def fun(x,*args):
	print("x = ",x)
	print("args = ",args)
>>> fun(1,2,3,4,5)
x =  1
args =  (2, 3, 4, 5)
# 我们可以传任意个参数给这个函数。第一个参数被常规参数’a’接收,其他参数被’args’作为元组接收
#下面我们只给x传值,后面没有所以列表为空
>>>fun(5)
x = 5
args = ()
  • 两个“*”作用
# 它接收字典作为位置参数,即收集到多余的参数是会把它们以字典的形式收集起来
>>> def fun(x,**kwargs):
	print("x = ",x)
	print("kwargs = ",kwargs)

	
>>> fun(1,a=2,b=4,c=5)
x =  1
kwargs =  {'a': 2, 'b': 4, 'c': 5}
>>> def foo(*args,**kwargs):
	print("args = ",args)
	print("kwargs = ",kwargs)
		
>>> foo(1,2,3,a=2,b=5)
args =  (1, 2, 3)
kwargs =  {'a': 2, 'b': 5}
#并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前.
# 能有确认的参数最好了~。
相关推荐
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页