python中反斜杠t是什么意思,python中反斜杠的作用
函数定义中斜杠(/)之前的参数只是位置性的,斜杠(/)之后的参数可以是语法中的任何类型。其中参数仅根据它们在调用函数时的位置映射到位置形参。通过关键字(名称)传递仅位置参数无效。
比如def foo(a,b,/,x,y):
打印(“位置”,a,b)
打印(位置或关键字,x,y)
在上面的函数定义中,参数A和B只是位置参数,而X或Y可以是位置参数,也可以是关键字。
下面的函数调用有效的foo(40,20,99,39)
foo(40,3.14,你好,y=世界)
foo(1.45,3.14,x=hello ,y=world )
但是下面的函数调用无效,会导致异常类型错误,因为A和B不是作为位置参数传递的,而是foo (a=1.45,b=3.14,x=1,y=4) typeerror: foo()得到了一些只作为关键字传递的位置参数。
参数:“a,b”
python中很多内置函数只接受位置参数,这些参数对于通过关键字传递参数是没有意义的。比如内置函数len只接受一个position (only)参数,其中调用len为len (obj="hello world ")会降低可读性。请查看帮助(len)。帮助(len)
关于模块内置内置函数len的帮助:
len(obj,/)
返回容器中物品的数量。
只有位置参数使得底层c/库函数易于维护。它允许将来更改位置参数的参数名,而不会破坏使用API的客户端代码。
但最后但同样重要的是,只有位置参数允许我们在变长关键字参数中使用它们的名称。检查以下示例def f(a,b,/,**kwargs):
.印刷(a、b、kwargs)
.
f(10,20,a=1,b=2,c=3) # a和b有两种用法
10 20 {a: 1, b: 2, c: 3}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。