以下是我正在执行的功能:
def concat(*args, sep='/'):
return sep.join(args)
当我尝试传递以下参数时,它会正确执行
>>> concat('earth', 'mars', 'venus')
输出: '土/火星/金星'
但是当我通过下面的论点时,我会在最后得到一个额外的点?
>>> concat('earth', 'mars', 'venus', ".")
输出:'earth / mars / venus /.'
是的,我知道在* args参数之后我们必须使用'仅限关键字'参数,但我的问题是,如果是这种情况,为什么它不会给出任何错误。为什么最后加点?
答案 0 :(得分:1)
在这种情况下,您必须明确命名您正在传递的参数。
concat('earth', 'mars', 'venus', sep=".")
顺便说一下,这就是Python 3的print()
的工作方式。