函数 方法 功能
说白了,函数就是把一堆代码组合到一起,变成一个整体。函数不调用不会被执行。
作用在于提高代码的复用性。
定义函数
def greet_user(): """关键字def来告诉Python你要定义一个函数""" print("Hello!") greet_user()
向Python指出了函数名,还可能在括号内指出函数为完成其任务需要什么样的信息。在这里,函数名为greet_user(),它不需要任何信息就能完成其工作,
因此括号是空的(即便如此,括号也必不可少)。最后,定义以冒号结尾。
传递实参
def hello(file_name,content=''): #形参,形式参数 #函数里面的变量都是局部变量 f = open(file_name, 'a+',encoding='utf-8') if content: f.write(content) res = '' else: f.seek(0) res = f.read() f.close() return res users = hello('tlx.txt') print(users) ybq = hello('ybq.txt','1223332423') print(ybq)
#形参
#实参
#位置参数,必填参数
#默认值参数,不是必填的,
返回值
#如果想获取到函数的结果,那么必须return
#如果函数没有写return的话,返回值是None,return不是必须写的,需要获取到函数的
#返回结果再写。
#return 立即结束函数
全局变量
a = 100 #全局变量 def test(): global a #声明全局变量 a = 5 print('里面的',a) test() print('外面的',a)
递归函数
# 递归 自己调用自己
count = 0 def test1(): # num = int(input('please enter a number:')) global count count+=1 num = 8 if num % 2 == 0: # 判断输入的数字是不是偶数 pass print(count) return test1() # 如果不是偶数的话继续调用自己,输入值 print(test1()) # 调用test
# 用递归能实现的用循环都能实现,最好别用递归。
#递归最多能递归999次。