1、定义一个函数`
def hello():
print('hello')
print('python'
hello() ##调用函数,通过函数名调用
def westos():
print('is westos')
def python(): ##函数中嵌套函数
print('is python')
python() ##嵌套的函数注意调用位置
westos()
2、参数 分为形参和实参
形参分为1、位置参数2、默认参数3、可变参数4、关键字参数
def welcome(a): ##定义函数的时候的变量,叫形参(形参可以任意起名)
print('hello',a)
welcome('tom') ##真实的数据信息,调用函数时传的参数称实参
1)位置参数:形参和实参个数必须保持一致
def getInfo(name,age): ##按照位置传参,形参和实参个数必须一致
print(name,age)
getInfo('westos',11) ##按照位置传参数
getInfo(age=11,name='westos')
2)默认参数, 形参和实参数数量可以不一致
def mypow(x,y=2): ##默认参数,形参和实参数量可以不一致
print(x**y)
mypow(4)
mypow(2,3)
3)可变参数
def mysum(*a): ##可变参数
print(*a)
print(a)
sum = 0
for item in a:
sum += item
print(sum)
mysum(1,2,3,4,6,7,8)
4)关键字参数
def getStuInfo(name,age,**kwargs): ## **kwargs(名字可任意)是一个字典,可以传递任意多的key-value
print(name)
print(age)
print(kwargs)
getStuInfo('westos',11,hobbies=['code'])
3、返回值
返回值:函数运算的结果,还需进一步操作,给函数一个返回值
return用来返回函数执行的结果,如果没有返回值,默认返回None
python可以间接返回多个值(返回了一个元组)
一旦遇到return 函数执行结束 后面的代码不会执行
def mypow(x,y=2):
return x**y,x+y
print('!!!!!!!!!!!')
a = mypow(4)
print(a)
print(mypow(3))
4、变量
变量分为局部变量和全局变量
a=1
print('outside: ',id(a))
def fun():
global a ##声明全局变量,不声明函数中默认是局部变量,只能能在函数中用
a = 5
print('inside: ',id(a))
fun()
print(a)
print(id(a))