zoukankan      html  css  js  c++  java
  • 20190618—位置参数、默认参数、不定长参数

    1、位置参数

    1 def menu(staters,staple_food):
    2     print('这个顾客点的开胃菜是'+staters+',主食是'+staple_food+'')
    3 menu('酸辣白菜','米饭')
    4 # '酸,所以叫做“位置参数”辣白菜','米饭'对应的参数staters和staple_food的位置是传递顺序;
    表示换行。
    5 
    6 # 另一种表达方式:直接在括号里面赋值
    7 menu(staters='米饭',staple_food='酸辣白菜')

    》》》》》》

    这个顾客点的开胃菜是酸辣白菜,主食是米饭。

    这个顾客点的开胃菜是米饭,主食是酸辣白菜。

    2、默认参数

    1 def menu(staters,staple_food,dessert='布丁'):
    2     print('这个顾客点的开胃菜是'+staters+',主食是'+staple_food+',甜品是'+dessert+'')
    3 menu('酸辣白菜','米饭')
    4 # dessert的位置从一开始就固定在了括号内,dessert叫做默认参数

    》》》》》》》
    这个顾客点的开胃菜是酸辣白菜,主食是米饭,甜品是布丁。

    3、元祖

    1 def menu(*dessert):
    2     for i in dessert:
    3         print('今日新推出的甜点有:'+i)
    4 menu('布丁','酸奶','面包')
    5 # menu('布丁','酸奶','面包')就叫做元祖,元祖是可迭代的对象,需要用for..in...来遍历它。

    》》》》》》

    今日新推出的甜点有:布丁
    今日新推出的甜点有:酸奶
    今日新推出的甜点有:面包

     4、不定长参数

    1 def menu(greens,staple_food,*barbecue,dessert='布丁'):
    2     print('38号桌顾客点的热菜:'+greens+'
    主食:'+staple_food)
    3     for i in barbecue:
    4         print('烧烤:'+i)
    5     print('甜点:'+dessert)
    6 menu('红烧带鱼','米饭','羊肉串','烤肥肠','烤茄子')
    7 # menu('红烧带鱼','米饭','羊肉串','烤肥肠','烤茄子')的元素位置与menu(greens,staple_food,*barbecue,dessert='布丁')的元素位置一一对应,因此,默认元素dessert='布丁'需放在最后面,不能随意挪动位置,否则传递的位置至会对应不上

    》》》》》》

    38号桌顾客点的热菜:红烧带鱼
    主食:米饭
    烧烤:羊肉串
    烧烤:烤肥肠
    烧烤:烤茄子
    甜点:布丁

     
    def menu(zhushi,kaiweicai,tianpin='沙拉'):
        print('一份主食'+zhushi)
        print('一份开胃菜'+kaiweicai)
        print('一份甜品'+tianpin)
    menu('米饭','酸黄瓜')
    
    def menu(recai,liangcai,*shaokao,tiandian='慕斯蛋糕'):
        # 默认参数tiandian需放在不定长参数shaokao后面,否则打印的时候传递值会对应不上
        print('今日特价热菜'+recai)
        print('今日特价凉菜'+liangcai)
        for i in shaokao:
            print('本店最新推出的烧烤有:'+i)
        print('今日限量供应甜点'+tiandian)
    menu('红烧肉','凉拌小黄瓜','烤鸡翅','烤玉米','烤羊肉串','烤牛排')
    list1=('干果','芝士蛋糕','冰淇淋','面包')
    def menu(*tiandian):
        print(tiandian)
    menu(*list1)
  • 相关阅读:
    二维数组和指向指针的指针
    多路复用构建高性能服务器
    disque概要
    漫谈云计算与SOA (1)
    zeromq
    自定义内存分配
    基于行的操作
    反应器类型的操作
    多个流,简短的读和写
    缓存
  • 原文地址:https://www.cnblogs.com/yssshiny/p/11044866.html
Copyright © 2011-2022 走看看