9.1函数参数的操作和返回值

1.参数的操作

实际参数传递给形式参数的操作方式,就是参数的操作

①位置参数(默认)

实际参数,安装形式参数声明的前后顺序,依次赋值的过程

# 参数的操作
def show(name,age,height):
    print(f"姓名:{name}, 年龄:{age},身高:{height}")

# 位置参数
show("dongai",18,"185")

②关键字参数

实际参数进行数据传递时,将实际参数直接赋值给形式参数变量,提高代码可读性

# 关键字参数
def show(name,age,gender):
    print(f"姓名:{name},年龄:{age},性别:{gender}")
    
show(name="dongai",gender="man",age=20)

③默认值参数

形式参数声明时候,可以直接给形式参数赋值(默认值),如果调用函数时不给带有默认值的形式参数传递数据,该形式参数就会使用默认值.如果传递了实际参数,就会使用传递的实际参数.(默认值参数,要写在位置参数的后面)

# 默认值参数
def show(name,age,gender="man"):
    print(f"姓名:{name},年龄:{age},性别:{gender}")

show(name="dongai",age=20)
show(name="dongai",gender="girl",age=20)

④可变参数

可变参数,当函数不确定要接收参数的个数时,可以使用可变参数进行操作.
可变参数将一个普通参数前面添加一个"*",将普通参数变为可变参数

# 可变参数
def show(name,age,*information):
    print(f"姓名:{name},年龄:{age}")
    print(information)

show("dongai",20)
show("dongai",20,"girl") # information("girl")
show("dongai",20,"girl",1.85) # information("girl",1.5)
show("dongai",20,"girl",1.85,100) # information("girl",1.85,100)

⑤可变关键字参数

可变参数再函数调用时,传递的实际参数需要约定他们的使用用途,对于代码的可读性并不是很友好,python提供了可变关键字参数提高代码的可读性

#可变关键字参数
def show(name,age,**information):
    print(f"姓名:{name},年龄:{age}")
    print(information)

show("dongai",20)
show("dongai",20,gender="male") # information("gender"="male")

⑥强制关键字参数

函数调用执行的过程中,必须按照形式参数的名称,按照key = value的形式传递数据

# 强制关键字参数
def show(name,*,age,height):
    print(f"姓名:{name}, 年龄:{age},身高:{height}")

# 位置参数
show("dongai",age=18,height="185")

⑦万能参数

函数调用过程中,不明确需要多少个位置参数,需要多少个关键字参数
通过python的参数语法,指定接收所有参数
[参数语法:(*args,**kwargs)

# 万能参数
def show(*args,**kwargs):
    print("arguments(参数):",args)
    print("keyword(关键字) arguments(参数):",kwargs)
show("dongai",age=20)

函数参数:形式参数(变量声明)和实际参数(包含了具体数据)
实际操作过程中,根据数据从实际参数传递到形式参数的方式的不同

2.函数的返回值

  • 返回值:函数中的代码 执行完成,返回的结果数据
  • 函数内部使用return关键字返回
  • 函数内部只要执行了return语句,这个函数就执行完毕了

①返回单个数据

  • 函数内部 只要执行了return关键字,直接返回单个结果数据
  • 需要在调用函数的时候,使用一个变量进行接收
def pay(price,count):
    res = price * count
    return res

total = pay(15.88,7)
print(f"打印小票:付款¥{total}") #打印小票:付款¥111.16000000000001
# 保留小数点后两位
print(f"打印小票:付款¥%.2f"%total) # 打印小票:付款¥111.16

②返回一组数据

  • 函数内部通过return关键字,返回多个数据(包含在组合数据类型返回)
  • 核心还是返回了一个数据(包含了多个数据)
def pays(price,count):
    pay = price * count
    money = float(input(f"请输入您的付款金额(应付¥{pay}:"))
    if money > pay:
        # 计算余额
        balance = money-pay
        # 找零
        print(f"找您¥%.2f"%balance)
    # 返回数据
        return {"price":price,"pay":pay,"money":money,"count":count,"balance":balance}
    else:
        input("支付金额不足,重新购买")
        return False
pays(price=15.88,count=10)

返回多个数据

函数被允许直接返回多个数据,调用函数的时候,可以使用1个或者多个变量进行接收

def pays(price,count):
    pay = price * count
    money = float(input(f"请输入您的付款金额(应付¥{pay}:"))
    if money > pay:
        # 计算余额
        balance = money-pay
        # 找零
        print(f"找您¥%.2f"%balance)
    # 返回数据
        return count,price
    else:
        input("支付金额不足,重新购买")
        return False
 # 调用执行函数
prices,counts = pays(price=12,count=4)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值