一些if
和else
的可改寫和縮短(codegolf式)同樣地,因爲布爾可以如在Python整數行動。例如if a<b:return a
可以被重寫爲作爲return("",a)[a<b]
。如何在Python中打印時減少變量?
在此情況下(I簡化可讀性的條件),
if a<b: print(a)
可以改寫爲以下兩者:
print(("",a)[a<b])
(print(""),print(a))[a<b]
(如果我們忽略換行符,否則end=""
可以使用)。
當a<b
在所有事物上都成立時,我想遞減一個變量n
(整個事物在n
的條件下),例如。
if a<b:
print(a)
n-=1
while using the syntax trick above above。 在C中,(n/n--)-1
不僅等於0,而且還從n
減1。在Python中,我還沒有找到辦法做到這一點。一些無效的語法我嘗試:
print(("",a+(n/n--)-1)[a<b])
(print(""),(print(a);n-=1))[a<b]
如何遞減變量(並打印a
)當條件使用這種「伎倆」是真的嗎?
1,2,3:這些陳述並非總是如此
請不要做奇怪的事情。 – Maroun
@MarounMaroun對我來說這似乎不奇怪:)總之,我會在將來發佈一個潛在的奇怪問題之前考慮兩次。感謝您注意我! –
很抱歉給大家,因爲措辭標題不是我的區域。任何指導方針或其他建議,將不勝感激。 –