2017-04-05 116 views
1

我最近開始學習Python,並且我有一個倒數計時器。它工作正常,但我想添加一個星號到輸出。添加星號到輸出

輸出的娛樂是:

Countdown timer: How many seconds? 4   
4**** 
3*** 
2** 
1* 
Blast off 

到目前爲止,我有:

import time 

countDown = input('Countdown Timer: How many seconds?') 

for i in range (int(countDown), 0, -1): 
    print (i) 
    time.sleep(1) 
print ('BLAST OFF') 
+0

我找不到在YouTube或其他任何網站一樣堆棧溢出 –

+0

任何你可以像'打印(STR(我實驗)+'*'* i')...這會將數字i轉換爲字符串並添加'*'i次 –

回答

0

下面的代碼將工作:

import time 

countDown = input('Countdown Timer: How many seconds?') 

for i in range (int(countDown), 0, -1): 
    print(i*'*') # This will print i number of '*'s 
    time.sleep(1) 
print ('BLAST OFF') 
+0

感謝您的幫助 –

1

只需添加*同時用數字印刷。

import time 

countDown = input('Countdown Timer: How many seconds?') 

for i in range (int(countDown), 0, -1): 
    print (i,"*"*(i)) 
    time.sleep(1) 
print ('BLAST OFF') 

print str(i)+"*"*(i) - 數字後沒有空格。

+0

這只是有效的Python 2.OP可能位於Python 3. –

+0

感謝您的信息,已更新。 – bhansa

0

您可以使用下面的代碼所需要的輸出

import time 
countDown = input('Countdown Timer: How many seconds?') 

for i in range (int(countDown), 0, -1): 
    print (i), 
    print ('*' * i) 
    time.sleep(1) 
print ('BLAST OFF') 
+0

這隻適用於Python 2,OP很可能在Python 3上。 –

0

你可以讓你的代碼更加靈活定義它作爲一個功能。

什麼是功能?
函數是一個有組織的代碼塊,它提供了模塊化,以便代碼可以重用。

說的是,定義了一個函數blastOff()。我們可以用倒數的任何值來調用這個函數,無論是4還是10或20,都作爲括號內函數的參數傳遞。我們可以做到這一點,而不必一次又一次地寫代碼。

import time 
def blastOff(n): 
    """Returns "Blast Off" after a reverse countdown of n""" 
    for i in reversed(range(1, n + 1)): # iterate over a reversed range 
     print(i, i * "*") # multiply "*" by the ith number of the range. 
     time.sleep(1) # sleep for a second before looping over the next number in the range. 
    return "BLAST OFF" 

blastOff(4) 

4 **** 
3 *** 
2 ** 
1 * 
Out: 'BLAST OFF'  
0

如果您正在使用python3那就試試這個代碼

import time 
countDown = input('Countdown Timer: How many seconds?') 

for i in range (int(countDown), 0, -1): 
    print(i, end=" ") 
    print ('*' * i) 
    time.sleep(1) 
print ('BLAST OFF')