函数的几种参数类型

# 函数
# (1 以def开头,后接函数标识符和圆括号()
# (2 所有传入的参数和自变量都必须在圆括号中,可以在圆括号中定义参数
# (3 函数内容以冒号开始,并且要缩进
# (4 return 表达式  ,结束函数,选择性返回一个值给调用方,不带表达式的return相当于返回None
# (5 函数的参数有必须参数、关键字参数、默认参数、可变参数、组合参数

# 1、必须参数。必须以正确的顺序传入参数,传入的数量也必须一样。
def paerameone(str):
    print('传入的参数:%s' % str)
paerameone('hello')

# 当不传入参数
# paerameone() 提示缺少参数:missing 1 required positional argument: 'str'

# 当传入的参数大于定义函数的参数数量
# paerameone('1','2')  提示paerameone() takes 1 positional argument but 2 were given

# 2、关键字参数。函数调用关键字参数确定传入的参数值。使用关键字参数允许调用函数时参数的顺序与声明式不一致。
def person(age,name):
    print('age是%s,name是%s'%(age,name))
person(18,'小明') # 使用必须参数,传入正确的顺序、数量
person(age=20,name='小红')

# 3、默认参数。调用函数时,如果没有传递参数,则使用默认参数。即在定义参数时,给参数一个默认值,如果调用的函数没有传参,则使用默认的参数。
# 并且默认参数要放在非默认参数后面
def default(age,name='静静'):
    print('age是%s,name是%s'%(age,name))
default(18)  # age是18,name是静静
default(age=19)  # age是19,name是静静

# 4、可变参数。如果需要一个函数能够处理的函数声明时更多这些参数叫作可变参数。
# 加了*号的变量名会存放所有的未命名的变量参数。在函数内部,参数前的*号将所有值放在同一个元组里。当在调用时没有传指定参数,则就是一个空元组。
# 可变参数声明时不会命名。
def personinfo(arg,*personinfotuple):
    print(arg)
    for var in personinfotuple:
        print('可变长参数为%s' % var)

personinfo(arg='小明')
personinfo('小明','20','shenzhen')

# 4、关键字参数。使用**处理关键字参数。
# **param表示把param接收以key:value键值对的关键字参数。
def personinfo2(arg,**personparam):
    for var1,var2 in personparam.items():
        print('关键字参数为%s%s'%(var1,var2))
personinfo2('小明',classcode='2',age=18)


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值