[英]How to print parts of an array on the the same line in a function, without having space?
我试图按字符打印字符串,但是它们之间总是有空白。 似乎无法弄清楚如何摆脱它。 有没有办法在没有空格的情况下仍然打印动画字符串?
import time
starting_text = 'Welcome to CHOOSE YOUR OWN ADVENTURE!'
new_starting_text = list(starting_text)
for x in new_starting_text:
print(x),
time.sleep(.1)
无需将String转换为列表,只需调用replace函数将空格替换为空String。
starting_text = = 'Welcome to CHOOSE YOUR OWN ADVENTURE!'
new_starting_text = starting_text.replace(" ", "")
#result = 'WelcometoCHOOSEYOUROWNADVENTURE!'
#to print it character by character you can loop through the new string
for x in new_starting_text:
print(x)
希望这可以帮助。
对于Python 3
import time
starting_text = 'Welcome to CHOOSE YOUR OWN ADVENTURE!'
new_starting_text = list(starting_text)
for x in new_starting_text:
print(x, end='')
time.sleep(.1)
输出量
欢迎您选择自己的冒险!
对于Python 2
from __future__ import print_function
import time
starting_text = 'Welcome to CHOOSE YOUR OWN ADVENTURE!'
new_starting_text = list(starting_text)
for x in new_starting_text:
print(x, end='')
time.sleep(.1)
输出量
欢迎您选择自己的冒险!
从help(print)
:
print(...)
print(value, ..., sep='', end='\n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
尝试使用此修改后的代码:
import time
import sys
starting_text = 'Welcome to CHOOSE YOUR OWN ADVENTURE!'
new_starting_text = list(starting_text)
for x in new_starting_text:
print(x,end = ''),
sys.stdout.flush()
time.sleep(.1)
std.stdout.flush()会将光标带回到第一行,从而消除了新行并保留了所需的动画。 希望这对您有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.