Python基础必学内容:位置参数、默认参数、不定长参数
1、位置参数
def menu(staters,staple_food):
print('这个顾客点的开胃菜是'+staters+',主食是'+staple_food+'。\n')
menu('酸辣白菜','米饭')
# '酸,所以叫做“位置参数”辣白菜','米饭'对应的参数staters和staple_food的位置是传递顺序;\n表示换行。
# 另一种表达方式:直接在括号里面赋值
menu(staters='米饭',staple_food='酸辣白菜')
输出:
这个顾客点的开胃菜是酸辣白菜,主食是米饭。
这个顾客点的开胃菜是米饭,主食是酸辣白菜。
2、默认参数
def menu(staters,staple_food,dessert='布丁'):
print('这个顾客点的开胃菜是'+staters+',主食是'+staple_food+',甜品是'+dessert+'。\n')
menu('酸辣白菜','米饭')
# dessert的位置从一开始就固定在了括号内,dessert叫做默认参数
输出:
这个顾客点的开胃菜是酸辣白菜,主食是米饭,甜品是布丁。
3、元祖
'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def menu(*dessert):
for i in dessert:
print('今日新推出的甜点有:'+i)
menu('布丁','酸奶','面包')
# menu('布丁','酸奶','面包')就叫做元祖,元祖是可迭代的对象,需要用for..in...来遍历它。
输出:
今日新推出的甜点有:布丁今日新推出的甜点有:酸奶今日新推出的甜点有:面包
4、不定长参数
def menu(greens,staple_food,*barbecue,dessert='布丁'):
print('38号桌顾客点的热菜:'+greens+'\n主食:'+staple_food)
for i in barbecue:
print('烧烤:'+i)
print('甜点:'+dessert)
menu('红烧带鱼','米饭','羊肉串','烤肥肠','烤茄子')
# menu('红烧带鱼','米饭','羊肉串','烤肥肠','烤茄子')的元素位置与
# menu(greens,staple_food,*barbecue,dessert='布丁')的元素位置一一对应,
# 因此,默认元素dessert='布丁'需放在最后面,不能随意挪动位置,否则传递的位置至会对应不上
输出:
38号桌顾客点的热菜:红烧带鱼
主食:米饭
烧烤:羊肉串
烧烤:烤肥肠
烧烤:烤茄子
甜点:布丁
'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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)
输出:
一份主食米饭
一份开胃菜酸黄瓜
一份甜品沙拉
今日特价热菜红烧肉
今日特价凉菜凉拌小黄瓜
本店最新推出的烧烤有:烤鸡翅
本店最新推出的烧烤有:烤玉米
本店最新推出的烧烤有:烤羊肉串
本店最新推出的烧烤有:烤牛排
今日限量供应甜点慕斯蛋糕
('干果', '芝士蛋糕', '冰淇淋', '面包')
Python基础太难学?小编创建了一个Python学习交流QQ群:531509025,群里有大量基础入门知识,都是从零开始的,群里还有专业的人给你解答问题。寻找有志同道合的小伙伴,互帮互助,群里还有不错PDF电子书
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16760765.html