在函数调用时:位置形参、位置实参、关键字实参的特点



'''形参
在函数定义阶段括号内定义的参数,称之为形式参数,简称形参,
相当于变量名。

'''
def func(x,y):
    if x > y:
        print(x)

    print(y)

'''实参
在函数调用阶段括号内传入的参数,称之为实际参数,简称实参,
相当于变量的值。

'''
func(1,2)

'''位置参数

位置形参:
在函数定义阶段,按照从左到右的顺序依次定义的形参,
称之为位置形参。

特点:
按照位置定义的形参,都必须被传值,多一个不行,少一个也不行。


位置实参:
在函数调用阶段,按照从左到右的顺序依次定义的实参,
称之为位置实参。

特点:
按照位置为对应的形参依次传值。

'''
'''关键字实参

在调用函数时,按照key=value的形式为指定的参数传值,
称为关键字实参。
func(y=2,x=6)

特点:
可以打破位置的限制,但仍然能够为指定的形参赋值。

注意注意!!!!!:
1、可以混用位置实参和关键字实参,但是位置实参必须在关键字实参的左边。
2、可以混用为位置实参和关键字实参,但不能对一个形参重复赋值。
func(x,y=2) #正确
func(y=2,x) #SyntaxError: positional argument follows keyword argument
func(x,x=1) #NameError: name 'x' is not defined

'''
func(1,y=2) #正确
# func(y=2,1) #SyntaxError: positional argument follows keyword argument
# func(1,x=1) #TypeError: func() got multiple values for argument 'x'










posted @   大海一个人听  阅读(1562)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示