我正在努力理解python中的splat运算符。我有一个代码:
word = ['s', 't', 'a', 'c', 'k', 'o', 'v', 'e', 'r', 'f', 'l', 'o', 'w']
print(*word)
输出:
s t a c k o v e r f l o w
在调试中,我无法将*word
分配给某个变量以检查其类型或smth else。所以我想知道print()
用哪种方式得到*word
的序列,以及是否可以在没有空格的情况下打印这个单词。理想输出:
stackoverflow
您会得到这个结果,因为print
会自动在传递的参数之间放置空格。您需要修改sep
参数以防止插入sep
分隔空间:
print(*word, sep="") # No implicit separation space
stackoverflow
您可以传递您想要的分隔符,在您的情况下:
print(*word, sep="")
或者做:
print(''.join(word))