需要澄清 str.join() 方法的工作原理

Need clarification on how the str.join() method works

我在python中写了这段代码:

def master_yoda(text):
    a=text.split()
    a=a[::-1]
    a=" ".join(a)
    return a

给出输出 'home am I'master_yoda('I am home').

执行

而如果我在中间放一个空 space — a=''.join()a — 输出变为 'homeamI'。 为什么会这样?

调用join方法的字符串用于连接元素,即它出现在结果中列表的每个元素之间。

>>> "-".join(["a", "b", "c"])
'a-b-c'
>>> "1".join(["a", "b", "c"])
'a1b1c'
>>> "hi".join(["a", "b", "c"])
'ahibhic'

空字符串也是字符串;它只有 0 个字符。因此,在结果中,列表的每个元素之间有零个字符。

>>> "".join(["a", "b", "c"])
'abc'