* 在Python中的打印函数中

Nir*_*aut 4 python printing string stdout

text = 'PYTHON'
for index in range(len(text)):
    print(*text[:index + 1])
Run Code Online (Sandbox Code Playgroud)

print函数中的 *在sys.stdout上的字符之间产生空格。有人可以告诉我它叫什么名字以及它实际上有什么作用吗?

Leo*_*rad 8

文本的 * 打印等同于打印print(text[0], text[1], ..., text[n]),并且打印每个部分之间有一个空格。你可以做

text = 'PYTHON'
for index in range(len(text))
    print("".join(list(text)[:index + 1]))
Run Code Online (Sandbox Code Playgroud)

或者

text = 'PYTHON'
for index in range(len(text))
    print(*text[:index + 1], sep='')
Run Code Online (Sandbox Code Playgroud)

这将打印每个部分,中间没有空格。输出

P
PY
PYT
PYTH
PYTHO
PYTHON
Run Code Online (Sandbox Code Playgroud)