如何使用splat-operator(*)打印列表而不带空格

Pav*_*ich 4 python splat

我试图了解python中的splat-operators。我有一个代码:

word = ['s', 't', 'a', 'c', 'k', 'o', 'v', 'e', 'r', 'f', 'l', 'o', 'w']
print(*word)
Run Code Online (Sandbox Code Playgroud)

输出:

s t a c k o v e r f l o w
Run Code Online (Sandbox Code Playgroud)

我无法分配*word给某个变量来检查其类型或在调试中进行其他操作。因此,我比较讨厌哪种方式print()获取序列,*word以及是否有可能在不带空格的情况下打印此单词。理想的输出:

stackoverflow
Run Code Online (Sandbox Code Playgroud)

Car*_*ate 6

之所以得到该结果,是因为会print自动在传递的参数之间放置空格。您需要修改sep参数以防止sep插入配比空间:

print(*word, sep="")  # No implicit separation space
stackoverflow
Run Code Online (Sandbox Code Playgroud)

  • @PavelAntspovich`print(* [1,2,3])`变成`print(1,2,3)`。 (5认同)