2016-08-18 130 views
1

我对Python编程很新颖,我试图在启动时创建一个带有一点“初始化”的简单小游戏。用新的打印输出取代以前的打印输出或将字符添加到以前的输出

我非常想让它拼出“欢迎”,但所有字母都会弹出每100ms

但是,我已经得到了sleep函数的下拍功能,而不是将每个字符添加到上一行的末尾,它只是将它全部打印在一个新行上。

这是我目前得到:

W 
e 
l 
c 
o 
m 
e 
. 

我宁愿它只是Welcome.

这是我当前的代码:

print("W") 
time.sleep(0.1) 
print("e") 
time.sleep(0.1) 
print("l") 
time.sleep(0.1) 
print("c") 
time.sleep(0.1) 
print("o") 
time.sleep(0.1) 
print("m") 
time.sleep(0.1) 
print("e") 

我已经环顾四周,但没有理解如何在Python中实现该功能。所以一个解释将非常感谢!

谢谢。

回答

2

调用print()时,使用end=''

import time 
for c in "Welcome": 
    print(c, end='') 
    time.sleep(0.1) 
+0

的感谢!将在3分钟内接受:) –

1

Python的print()功能正常打印上新的线路输出,这意味着每次打印的东西的时候,它出现在另一条线。要在同一行上打印的一切,因为你问,使用print()功能是这样的:

print("W", end="") 

通知,告诉Python来继续在同一行打印的第二个参数。 print()函数默认为\n的结尾或新行。设置为end等于“”用空字符串代替\n

在自己需要打印出来后使用print()函数的事件“欢迎光临”,你用它来打印出“E”最后print()功能应该是正常的,就像这样:

print("e") 

这样,如果您在“欢迎”之后打印任何内容,它将以新行打印。

+0

谢谢!我会试试这个:) –

0

这个怎么样 -

for c in "Welcome": 
    print '\b%s' % c, 
    time.sleep(0.1)