python基础_014__函数—传递实参

本文详细介绍了Python中的函数定义、实参与形参的概念,以及位置实参、关键字实参和默认值的使用。通过示例代码展示了如何定义和调用函数,强调了参数顺序和匹配的重要性,帮助读者深入理解Python函数的运用。
摘要由CSDN通过智能技术生成

 1、函数的定义

# 解释:在java中就是方法,python类外叫函数,python类里面的叫方法

# 1.1 先定义一个带参的函数
def function(name):
    print(f"你好啊,{name}!")


# 1.2然程序调用function这个函数,并且传一个参数给它
function("刘艳")


# 1.3 运行程序后输出如下:
# 你好啊,刘艳!


 2、实参和形参


# 形参 :在1.1中的  def function(name): 中的name就是新参,即函数完成工作所需要的信息
# 实:在1.2中的  function("刘艳") 中的"刘艳"就是实参,即调用函数是传递给函数的信息,将实参"刘艳"传递给了函数function(),这个值赋给了形参

3、传递实参


# 1 、函数定义中可能有多个形参,因此函数调用中可能包含多个实参
# 2、 向函数传递实参的方式有很多
# 2.1、可以使用位置实参:这个要求实参顺序和形参的顺序相同
# 2.1、 可以使用关键字实参:其中每个实参都由变量名和值组成
# 3、还可以使用字典和列表作为参数去传


4、位置实参


# Python必须将函数调用中的每个实参都关联到函数定义的中的一个形参
# 最简单的关联方式是基于实参的顺序,这种关联方式叫做位置实参
# 在形参没有默认值的时候必须要有实参传给形参缺少实参的传入会报错缺少 x 个必需的位置参数】,传多了也会报错会告诉你多传了一个参数
# 位置实参的顺序很重要:如果实参的顺序放错了,你预期的结果就会错

def user(name, like):
    print(f"{name}喜欢{like}")


user("刘艳", "运动")
# 输出结果:刘艳喜欢运动
user("张三", "李四")


# 输出结果:张三喜欢李四

# user("王五") # 少了一个实参
# 输出结果:会报错
# TypeError: user() missing 1 required positional argument: 'like'
# 翻译:类型错误:user() 缺少 1 个必需的位置参数:'like'

# user("王五", "溜冰", "7777")  # 多了一个实参
# 输出结果:会报错
# TypeError: user() takes 2 positional arguments but 3 were given
# 类型错误:user() 需要 2 个位置参数,但给出了 3 个


 5、关键字实参


# 注意:使用关键字实参时务必准确的指定函数定义中的形参名
# 关键字实参的顺序无关紧要
# 关键字实参是传递给函数的名称值对,向函数传递参数时不会混淆,还清楚的指出函数调用的各个值的用途


def users(name, like):
    print(f"{name}喜欢{like}")


users(name="刘艳", like="运动")
users(like="运动", name="刘艳")
# 上面2个函数调用是等价的 输出结果都为:刘艳喜欢运动


6、默认值


# 可以在函数定义中的形参指定默认值
# 如果显示的给形参传了实参,那么python会忽略这个形参的默认值, 如果实参没有传会默认使用默认值
# 注意:使用默认值时,必须现在形参列表中列出没有默认值的形参
# 过于简单不错讲解
# 注意: 函数中部分形参没有默认值,在调用的时候实参必须得传给没有默认值的形参
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值