python-函数
- 1.函数定义
- 2.自定义函数,基本规则
- 3.语法
- 4.参数
- 4.1必备参数
- 4.2默认参数
- 4.3不定长参数
- 4.4匿名参数
- 5.函数举例代码
1.函数定义
函数是组织好的,可重复使用的,用来实现功能的代码段。
2.自定义函数,基本规则
1.以 def 关键词开头,后接函数名称和()
2.传入的参数和自变量放入()。
3.函数内容以冒号起始,并且缩进
4.return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的 return 相当于返回 None。注意:return只能在函数中使用,注意缩进。
3.语法
def functionname( parameters ):"函数_文档字符串"function_suitereturn [expression]
4.参数
4.1必备参数
必备就是不能少,调用时的数量必须和声明时的一致,如果少了一个就会报错,例如:
我设置的是三个参数,而我的代码中只出现了两个
因此就出现了以下报错:
https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注!
欢迎关注微信公众号:宝藏女孩的成长日记
让这个可爱的宝藏女孩在努力的道路上与你一起同行!
如有转载,请注明出处(如不注明,盗者必究)
4.2默认参数
必选参数在前,默认参数在后,当我们设置了age为默认的时候,即使参入参数的时候没有写age,我们也默认age为20,除非你在传参的时候更新了age的值,如果你改正了值,那输出结果就是你最后改正的那个。
运行结果:
4.3不定长参数
就是函数参数的个数不确定问题,即函数的变长参数问题
代码
在代码中,设置了一个不定长的参数,后面无论传多少个字符都可以。
#coding=utf-8def printinfo(num, *budingchang):print(num)for list1 in budingchang:print(list1)returnprint(10)
print(70, 60, 50)
运行结果
4.4匿名参数
被定义的函数是没有名字的,主体是一个表达式,不需要使用代码块
语法
lambda [arg1 [,arg2,.....argN]]:expression
具体格式
函数对象名 = lambda 形式参数列表:表达式
代码
#coding=utf-8def sum(x, y):return x+y
print(sum(1,2))#等价于
lambda x, y: x+y
print((lambda x, y: x+y)(1, 2))
运行结果
5.函数举例代码
看这个代码有助于你理解,最好自己运行一遍,加深记忆
#coding=utf-8#导时间包
import timedef find_friend(type, height, sex, age=20):""":param type: 0示周杰伦 1表示彭于晏 2表示霍建华:param height: 他的身高是多少:param sex: 性别:return: 返回值"""#我们还可以将你选择朋友的时间打出来find_friend_local = time.localtime()time_select = time.strftime("%Y-%m-%d %H:%M:%S", find_friend_local)if type == 0:print("你的朋友是周杰伦,他的身高是:", height, "性别是:", sex, age, "时间:", time_select)return Trueelif(type == 1):print("你的朋友是彭于晏,他的身高是:", height, "性别是:", sex, "时间:", time_select)return Trueelif(type == 2):print("你的朋友霍建华,他的身高是:", height, "性别是:", sex, "时间:", time_select)return Trueelse:print("你只能从这三个里面选")return False
#return执行完以后后面的代码就不会被输出,不带表达式的return相当于返回Noneprint("这一行不会被输出")result = find_friend(0, 180, "男")
print("result=", result)result1 = find_friend(3, 200, "男")
print("result1=", result1)
运行结果
希望可以帮到你!
https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注!
欢迎关注微信公众号:宝藏女孩的成长日记
让这个可爱的宝藏女孩在努力的道路上与你一起同行!
如有转载,请注明出处(如不注明,盗者必究)