Python基础学习之路(六) ------ 函数/异常处理
2019-07-19 本文已影响0人
千喜Ya
一.函数定义
二.参数
注意传参顺序,如果乱序传参可指定赋值
def menu(appetizer, course):
print('一份开胃菜:' + appetizer)
print('一份主食:' + course + '\n')
#还记得转义字符\n吧,表示换行
menu('牛肉拉面','话梅花生')
menu('话梅花生','牛肉拉面')
#如果采用下面这种形式传递,就不需要理会参数位置
menu(course = '牛肉拉面', appetizer = '话梅花生')
不定长参数 :是一个星号*加上参数名(需要注意的是:默认参数必须放在位置参数之后。)
def menu(*barbeque):
for i in barbeque:
print('一份烤串:' + i)
#传过来的是元组,元组中的元素不可更改
menu('烤香肠', '烤肉丸')
menu('烤鸡翅', '烤茄子', '烤玉米')
# 不定长参数可以接收任意数量的值
3.返回值
返回多个值(返回类型是元组)
import random
appetizer = ['话梅花生','拍黄瓜','凉拌三丝']
def coupon(money):
if money < 5:
a = random.choice(appetizer)
return a
elif 5 < money < 10:
b = random.choice (appetizer)
return b, '溏心蛋'
result = coupon(6)
# result是一个元组
print(result[0])
print(result[1])
另外一种方式:我们也可以同时定义多个变量,来接收元组中的多个元素
import random
appetizer = ['话梅花生','拍黄瓜','凉拌三丝']
def coupon(money):
if money < 5:
a = random.choice(appetizer)
return a
elif 5 < money <10:
b = random.choice (appetizer)
return b, '溏心蛋'
dish, egg = coupon (7)
# 元组的两个元素分别赋值给变量dish和egg
print(dish)
print(egg)
变量作用域 :
常见错误 :
4. try except
关于Python的所有报错类型,有需要的话可以在这里查阅:https://www.runoob.com/python/python-exceptions.html
num = [1,2,0,3]
for x in num:
try:
#尝试执行下列代码
print (6/x)
#使用6除以num中的元素,并打印
except ZeroDivisionError:
#除非发生ZeroDivisionError报错,执行下列代码:
print('0是不能做除数的!')
#打印“0是不能做除数的!”