是否可以忽略方法中传递/覆盖的参数?
这是我想要做的事情的一个例子:
def event_handler(one, two):
print(one)
print(two)
在另一个地方:
event_handler(one, two, three)
我的意思是第三个参数是可选的。我已经尝试过Python Fiddle,但没有错误就行不通。
答案 0 :(得分:3)
使第三个成为默认参数
def event_handler(one, two, third = None):
然后进行错误处理,但因为它是默认的,所以很容易。
def event_handler(one, two, third = None):
print(one)
print(two)
if (three):
print(three)
答案 1 :(得分:2)
将变量参数与*args
一起使用。
def f(*args): pass
以args[0]
之类的列表访问vars,...
或者,
def f(required_arg1, required_arg2, *optional_args): pass