Jas*_*eOT 13 python python-3.x
我是Python的新手,想知道是否有一种简单的方法来获取Python函数中传递的参数数量.
a(1, 2, 3) ==>3
a(1, 2) ==>2
Run Code Online (Sandbox Code Playgroud)
Ign*_*ams 20
def a(*args, **kwargs):
print(len(args) + len(kwargs))
Run Code Online (Sandbox Code Playgroud)
你可以使用locals()来做到这一点
重要的是要注意,这应该最终完成,这是您方法的第一步.如果在方法中引入新变量,则会更改结果.因此,请确保按照这种方式进行操作:
def a(a, b, c):
# make this your first statement
print(len(locals()))
Run Code Online (Sandbox Code Playgroud)
如果你这样做:
def a(a, b, c):
z = 5
print(len(locals()))
Run Code Online (Sandbox Code Playgroud)
你最终得到4,这对你的预期结果是不合适的.
| 归档时间: |
|
| 查看次数: |
11851 次 |
| 最近记录: |