Python函数—参数

# ##函数的参数


# #位置参数 调用时传入的值按照顺序赋值给函数

def power(x, n):
    s = 1
    for i in range(1, n + 1):
        s = s * x
    return s


print('位置参数的调用:')
print(power(2, 3))


# #默认参数
def power(x, n=2):
    s = 1
    for i in range(1, n + 1):
        s = s * x
    return s


print('默认参数的调用:')
print(power(9))


# #可变参数 * 加一颗星号,用于元组
def calc_sum(*num_list):
    s = 0
    for n in num_list:
        s = s + n
    return s


print('可变参数的调用:')
print(calc_sum(1, 2, 3, 4, 5, 6))
print(calc_sum(1, 2, 3, 9))


# #关键字参数 ** 加入两颗星号
# 关键字参数允许传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict,即数据字典
def person(name, age, **kwargs):
    print('name:', name, 'age:', age, 'other:', kwargs)


print('关键字参数的调用:')
person('Adam', 45, gender='M', job='Engineer')


# #命名关键字参数 加入*作为分隔符 *后面的参数为命名关键字参数
# 命名关键字参数必须传入参数名
def person_named1(name, age, *, city, job):
    print(name, age, city, job)


print('命名关键字的调用1:')
person_named1('Sam', 19, city='Hangzhou', job='Student')


# 如果函数中已经存在可变参数,使用命名关键字参数时不需要再加入*号
def person_named2(name, age, *args, city, job):
    print(name, age, args, city, job)


print('命名关键字的调用2:')
person_named2('Bob', 45, 888, 999, 111, city='Shanghai', job='Teacher')


# #参数类型混合使用
# 混合使用时,定义的顺序应为 必选参数 默认参数 可变参数 命名关键字参数 关键字参数
def mix_fun(a, b, c=2, *args, key1, key2, **kwargs):
    print(a, b, c, args, key1, key2, kwargs)


print('混合关键字的调用:')
mix_fun('A', 'B', 'C', 1, 2, 3, 4, 5, key1=1, key2=2, D='6u', F='f', G='g')
# 输出 A B C (1, 2, 3, 4, 5) 1 2 {'G': 'g', 'F': 'f', 'D': '6u'}
a_tuple = ('A', 'B', 'C', 1, 2, 3, 4, 5,)
b_dict = {'key1': 1, 'key2': 2, 'D': '6u', 'F': 'f', 'G': 'g'}
mix_fun(*a_tuple, **b_dict)
# 输出 A B C (1, 2, 3, 4, 5) 1 2 {'G': 'g', 'F': 'f', 'D': '6u'}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值