2016-08-18 107 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)