函数定义与调用
#函数其实就是封装一段代码,在需要的时候调用
def fun1():
print('helloWorld')
fun1() #调用函数
print(fun1()) #这个函数没有返回值,所以会返回None
print(fun1) #如果没有括号,就会打印对象本身
def fun2():
return '各位,早安'
print(fun2())
参数与返回值
#函数的形式参数,实际参数
def sumdata(a,b): #a,b是形式参数,简称形参
return a+b
print(sumdata(35,36)) #实际参数,参数的数量要与形参一直,不能过多或过少
#函数的缺省值,也叫默认值
def sumdata(a=3,b=6): #当用户没有输入值时,以缺省值作为值
return a+b
print(sumdata())
print(sumdata(9))#当用户只输入了a的值,a使用用户的值,b使用缺省值
print(sumdata(9,9))#当用户输入了值,以用户的值为准
#缺省值的几种写法
print(sumdata(6,8))#简略写法
print(sumdata(a=6,b=10))#完整写法
print(sumdata(9,b=5))#先简略写法,后完整写法
print(sumdata(a=9,8))#先完整写法,后简略写法,不可以这么写
#一个函数中,可以出现多个return
#写一个函数,返回任意数字的绝对值
def jueduizhi(n):
if n>=0:
return n
return 'hello' #第一个return之后的语句,称之为不可达语句
else:
return -n
print(jueduizhi(-3))
#函数的return ,可以返回多个值,有多个返回值时,会以元组的形式返回
def sumdata2(a,b):
return a+b,a-b,a*b,a**b
return [a+b,a-b,a*b,a**b]#列表是一个对象,所以返回时不需要变成元组
print(sumdata2(2,25))
内置函数
#可变长度参数 *args
#sep=' ', 间隔符,表示每个参数之间放一个空格
# end='\n',换行符,在print了全部参数之后自动补一个换行符
# file=None,将print改为写入文件,需要配合open或者with open使用
print(1,2,3,4,5)
print(1,2,3,4,5,sep= '|',end='打印完毕')
def fun6(a=1,*args):
return a,*args
return a,(*args)#python 版本较低时,可能上一种写法会报错,使用这种写法
print(fun6(3,4,5,6,7,8,9))