Return python 中 *args 的多个值
Return multiple values from *args in python
我已经看过 this and this and this,但我仍然感到困惑和不确定 where/how 使用生成器/yield
和 splat/*
。
用例:在进一步操作输入之前对其进行清理。
def sanitize_inputs(*args):
for arg in args:
if arg == '':
yield None
else:
yield arg
"{}|{}".format(sanitize_inputs('abc',''))
理想情况下,sanitize_inputs
应该 return 一个扩展列表,这样字符串替换才会起作用。
好吧...在处于草稿状态之后,想通了,感谢this
In: "{}|{}".format(*sanitize_inputs('abc',''))
Out: 'abc|None'
我已经看过 this and this and this,但我仍然感到困惑和不确定 where/how 使用生成器/yield
和 splat/*
。
用例:在进一步操作输入之前对其进行清理。
def sanitize_inputs(*args):
for arg in args:
if arg == '':
yield None
else:
yield arg
"{}|{}".format(sanitize_inputs('abc',''))
理想情况下,sanitize_inputs
应该 return 一个扩展列表,这样字符串替换才会起作用。
好吧...在处于草稿状态之后,想通了,感谢this
In: "{}|{}".format(*sanitize_inputs('abc',''))
Out: 'abc|None'