我想縮短代碼 以下塊,但我不知道如何Python 3裏無法縮短這個代碼
發佈引擎收錄,因爲它是70行: https://pastebin.com/g2P8Lpbd
的代碼的預期功能是打印出一個心形的網格,它就是這樣做的。
我想縮短代碼 以下塊,但我不知道如何Python 3裏無法縮短這個代碼
發佈引擎收錄,因爲它是70行: https://pastebin.com/g2P8Lpbd
的代碼的預期功能是打印出一個心形的網格,它就是這樣做的。
所以有一些事情需要一些工作循環。你基本上是有很多塊看起來像這樣:
var2= 0
var = 1
print()
for i in range(9):
print(grid[var][var2],end=' ')
var2= var2+1
凡var
和var2
是控制哪些元素列表清單中被打印出來。但是,你在for
循環使用i
,當你可以使用來獲取列表元素:
for element in grid[var]:
print(element, end=' ')
您也可以嵌套在彼此內的循環,這意味着你可以將其替換所有現有代碼:
for outer in grid:
for element in outer:
print(element, end=' ')
或者更短:
for outer in grid:
print("".join(outer))
很好的答案!這應該是接受的 最後一節是我會做到這一點的方式,不需要跟蹤列表索引,只需要連接行並打印每一行即可。 –
實際上有一個oneliner:'print(「\ n」.join([「」.join(row)in grid]),end ='')' – Szabolcs
真的,但可能太多了,如果OP在循環中遇到問題。 –
70線應該沒問題後,併爲這裏的人們更容易。哪一位最慢,需要優化? –
對不起,我的意思是縮短 –
很高興知道你在做什麼的意圖。這段代碼需要做什麼? –