2017-02-24 19 views
0

我是新來的Python和自我學習在我自己的時間。 我學會了一些基本的技巧來打印下面的內容。使用for循環創建不同的序列

***** 
**** 
*** 
** 
* 

我發現了3種方式來做到這一點。它們是:

number = int(input("Enter a number: ")) 

for j in reversed (range(1, number+1)): 
    for i in reversed (range(1, o+1)): 
     print ("* ", end='') 
    print ('') 

for j in range(number): 
    for i in (range(number-o)): 
     print ("* ", end='') 
    print ('') 

for j in range(number+1): 
    number = number - 1 
    for i in (range(number+1)): 
     print ("* ", end='') 
    print ('') 

無論是3個作品。但我的問題是,我應該如何製作代碼才能打印。

***** 
**** 
    *** 
    ** 
    * 

在此先感謝!

回答

0

您可以使用與添加星號相同的方式將多個空格附加到字符串的開頭。

number = int(input("Enter a number: ")) 
for j in range(number): 
    for i in range(j): 
     print(" ", end='') 
    for i in range(number - j): 
     print("* ", end='') 
    print('') 
0

下面是一些你可以嘗試

number = int(input("Enter a number: ")) 

for j in range(number): 
     print((" " * (j)) + ("*" * (number-j))) 

這樣你可以在一個循環處理一切,很容易快速地理解它。您只需在循環的每次迭代中打印一次j次的空格和一次「*」數字-j次。

您可以使用類似的技術以您在文章中的方式打印出三角形。這將是第四種方式讓你檢查。

number = int(input("Enter a number: ")) 

for j in range(number): 
     print(("*" * (j+1)) + (" " * (number)))