簡體   English   中英

如何相應地在程序中添加空格?

[英]How do I add spaces in my program accordingly?

我的意思是,我想制作一個根據用戶輸入打印星星的程序,我做了:

for i in range(num):
  print((i*-1)*' ' + (i+1)*'*')



for o in range(num-1):  
  print((num-o-1)*'*')

除了這個:

 *
* *
 *

我明白了:

*
**
*

我該如何實現這些空間? 預先感謝!

如果將字符串乘以負數,則只需獲取空字符串。 而且你的公式開頭不正確。 您需要在前面填充足夠的空間以使其對齊(在等寬終端中)。

這是正確完成它的一種方法

>>> def diamond(n):
...     print(' '*n + '*')
...     for i in list(range(1,n)) + list(range(n,0,-1)):
...             print('{}*{}*'.format(' '*(n-i), ' '*(2*i-1)))
...     print(' '*n + '*')

將范圍轉換為列表對於大n來說效率不高,但它不是瓶頸,終端實際上​​只支持最多80個字符的寬度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM