# 函数=方法
# 提高代码复用性
# 函数必须调用后才能执行
# 函数中的变量都是局部变量
# 函数中遇到return就会结束
# 没有入参,没有返回值
def hello():
print("hello")
hello()
# 有多个入参,参数有默认值,有返回值
def welcome(name,country="中国"):
print("%s来自%s"%(name,country))
return name,country
welcome("郑佩","中国")
welcome("杜浩")
# name,country=welcome("peipei") # name,country分别接收函数的两个返回值
# print(name,country)
name=welcome("peipei") #name接收2个返回值,返回的值是一个元祖name=('peipei', '中国')
print(name)
# 必填参数和默认值参数
def welcome(name,country="中国"):
print("%s来自%s"%(name,country))
return name,country
n="郑佩"
# c="中国"
welcome(n,c) # 方法一
welcome(name="郑佩",country="中国") # 方法二
welcome(country="中国",name="郑佩") # 同上
welcome("郑佩",country="美国") # 方法三:前面两种方法混用
# welcome(country="美国","郑佩") #错误写法
# 可选参数
# 当不知道要穿多少参数时用这种方式
def send_msg(*phones): # 参数名可以自己定义,但是一般用*args,args接收到的是一个元祖
print(phones) # phones输出后为元祖格式
send_msg() # 可不传参数
send_msg("1329668742") # 传一个参数
send_msg("13296618742","15549429401") # 传多个参数
# 关键字参数
def send_msg(**kwargs): # args接收到的是一个字典,一般用kwargs表示
print(kwargs)
send_msg()
send_msg(name='郑佩')
send_msg(name='郑佩',age='18')