Python收集参数与for循环

Python收集参数与for循环,第1张

Python收集参数与for循环

Python收集参数与for循环

# 收集参数,减少定义变量名,*收集无序参数形成元组,**收集无序参数形成字典(放在最后)


def fun(*a, b, c, **d):                          # 自定义函数,给定一个无穷元组a(可以被传入n个实参),和两个形参,一个**d字典
    print("---------输出全部参数------------")
    print(a, b, c, d)                            # 输出*a的元组,b,c,**d的字典
    print("---------元组解包------------")
    print(*a, b, c, d)                              # 输出解包*a元组的元素及b,c
    print("---------关键字参数之和------------")
    print(b+c)                                   # 输出b+c的和 ,a为元组无法参与运算
    print("---------输出字典------------")
    print(d)                                     # 输出**d的字典
    print("---------切片元组求和------------")
    print(a[0]+b, a[1]+b, a[2]+b)                # 分别输出*a元组索引为0,1,2的元素与b实参的和
    # print("---------切片元组与字典指定键的值的和------------")
    # print(a[0]+d.pop('d1'))                   # 输出*a元组索引为0的值与**d字典键为'd1'的值之和(此行影响后面for遍历字典,原因不明)
    print("---------for循环遍历元组和字典------------")
    print("---------输出元组遍历结果------------")
    for x in a:                                  # for循环遍历a元组
        print(x)                                 # 输出遍历到的元组中的元素
    print("---------输出元组遍历值与c的和------------")
    for x in a:                                  # for循环遍历a元组
        print(x+c)                               # 分别输出a元组中遍历到的元素与c的和
    print("---------输出字典遍历的值------------")
    for y in d.values():                         # for循环遍历d字典中的值
        print(y)                                 # 分别输出d字典中遍历到的值
    print("---------输出字典值与c的和------------")
    for y in d.values():                         # for循环遍历d字典中的值
        print(y+c)                               # 分别输出d字典中遍历到的值与c的和
    print("---------输出遍历元组元素与字典值的和------------")
    for x in a:                                  # for循环遍历a元组
        for y in d.values():                     # for循环遍历d字典中的值
            print(x+y)                           # 分别输出a元组中遍历到的元素与d字典中遍历到的值的和


fun(1, 2, 3, b=10, c=88, d1=10, d2=20, d3=30, d4=40)      # 实参默认传给a,指定10传给b,88传给c,其他无序参数传给d

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5436749.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存