Python笔记四—函数

一,函数参数
1.默认参数
#默认参数即定义函数的时候参数值为默认,可以在调用该函数的时候不传值,使用默认参数值,默认参数只能指向不变对象
示例:
def power(x,n=2):
s =1
while n>0:
n =n-1
s = s*x
return s
power(5)
print(power(5))

2,位置参数,按照位置依次赋值
示例:
def power(x,n):
s =1
while n>0:
n =n-1
s = s*x
return s
power(5,3)

3,可变参数
#就是将传入值作为一个list或者tuple传入
#加了*的参数会以元组的形式导入,存放所有未命名的变量参数
def printinfo(arg1,*arg):
print(“打印arg1参数:%d” % arg1)
print(arg)
printinfo(10,20,50)

4,关键字参数
#通过为参数命名来为它们赋值,这叫做关键字参数。
#关键字参数允许你传入0个或者任意个含参数名的参数,这些关键字参数在函数内部自动组装成一个dict。**的参数会以字典的形式导入
示例:
def printinfo(arg1,**argdic):
print(“打印arg1参数:%d” % arg1)
print(argdic)
printinfo(5,x = 10,y = 20)

5,组合参数使用
#关键字参数与位置参数混用,位置参数在前,关键字参数在后,且关键字参数之后只能是关键字参数
顺序为:位置参数>默认参数>可变参数>命名关键字参数(*)>关键字参数
示例1:
def print_info(name,age,sex):
print(“名字是:%s” % name)
print(“年龄是:%d” % age)
print(“性别:%s” % sex)
print_info(“xiaoming”,age=18,sex=“男”)
示例2:
def f1(a,b,c=0,*args,**dict):
print(“a=”,a,“b=”,b,“c=”,c,“agrs=“,args,”**dict=",dict)
f1(1,2)
f1(1,2,m=10,ext =None)
结果:
在这里插入图片描述
示例3:
def f2(a,b,c=0,
,d,**dict):
print(“a=”,a,“b=”,b,“c=”,c,“d=”,d,”**dict=",dict)
f2(1,2,d=100,no=“004”)
结果:
a= 1 b= 2 c= 0 d= 100 **dict= {‘no’: ‘004’}
示例4:
args =(1,2,3)
my_dict = {‘d’:39,‘name’:‘xw’}
f2(*args,**my_dict)
结果:
a= 1 b= 2 c= 3 d= 39 **dict= {‘name’: ‘xw’}

二、匿名函数
藏匿名字的函数,对函数简单化
1,无参数无返回的函数
示例:
f = lambda : print(“hello python”)
f()
结果:
在这里插入图片描述

2,有参数无返回值
示例:
f = lambda name: print(“你好%s” %name)
f(“欢迎”)
结果:
在这里插入图片描述
3,有参数有返回值
示例:
f = lambda a, b : a + b
print(f(10,20))
结果:
在这里插入图片描述
4,自定义排序
示例:
stu = [{“name”: “xiaoming”,“age”: 17}, {“name”: “zhangsan”, “age”: 22}, {“name”: “lisi”, “age”: 18}]
#默认按照列表元素的第一个元素排序
print(stu)
#按照年龄排序
stu.sort(key=lambda my_dict:my_dict[“age”])
print(stu)
#按照名字排序,按照名字首字母排序
stu.sort(key=lambda my_dict:my_dict[“name”])
print(stu)
结果:
在这里插入图片描述
三、内置函数—enumerate()函数
enumerate()函数是python的内置函数,将可遍历的数据对象(字符串、元组、列表、字典)组合成一个索引序列,在遍历中获取数据下标和元素值。
语法:
enumerate(obj,[start=0])
默认下标从0开始
示例:
seasons =[‘Spring’,‘Summer’,‘Autumn’,‘Winter’]
for i,season in enumerate(seasons):
print(i,season)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值