在Python中,这两个示例具有相同的作用:from tkinter import Labelwidget = Label(None, text='Hello')widget.pack()widget.mainloop()from tkinter import Labelwidget = Label(None,'Hello')widget.pack()widget.mainloop()我认为这Label是一个类,当我尝试创建该类的实例时,我总是做与上一个代码示例相同的操作。我对的含义感到奇怪text='Hello'。有人可以告诉我吗?
3 回答

一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
我对text ='Hello'的含义感到奇怪。有人可以告诉我吗?
它是命名实参或关键字实参。
命名参数不仅可以传递参数值,还可以传递参数名称,从而可以以任何顺序将参数传递给函数。

凤凰求蛊
TA贡献1825条经验 获得超4个赞
正如其他人所说,这是一个keyword argument。实用上,指定或不指定参数之间的区别仅在于将使用哪个参数。
例如,如果您有一个带有3个参数的函数,并且只传递了其中一个或两个参数,则必须指定要使用的参数,以防它们不是定义中的第一个参数。
def f(a = "a", b = "b", c = "c"):
print a, b, c
>>> f("x")
x b c
>>> f("x", "y")
x y c
>>> f("x", c = "y")
x b y
添加回答
举报
0/150
提交
取消