需要澄清 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'
我在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'