【发布时间】:2012-09-08 18:47:25
【问题描述】:
我正在尝试使我的代码不接受关键字参数,就像某些 bulitins 也不接受关键字参数一样,但是我无法这样做。以下是我根据我有限的理解的想法:-
def somefunc(a,b):
print a,b
somefunc(10,20)
输出:
10 20
现在,当我运行以下命令时(我知道这不应该是函数定义中的关键字参数,但是,查看函数调用,它似乎与调用 a 时的语法相同接受关键字参数的函数):
somefunc(b=10,a=20)
输出:
20 10
我有 2 个问题:-
- 查看函数调用
somefunc(b=10,a=20)而不是函数定义,这似乎是对仅接受普通参数的函数或接受关键字参数的函数的调用。口译员如何区分两者? - 是否可以将我们的任何函数转换为某种形式,使其不像许多内置函数那样接受关键字参数?
我为什么要这样做? 我只是在检查我是否可以做到这一点,这样我就不会错过任何深入理解 python 的东西。我知道python是否允许这样做。
【问题讨论】:
-
你为什么要这样做?
-
我只是在检查我是否可以做到这一点,这样我就不会错过任何深入理解python的东西。