pass 很好用,常常可以在不想填東西的時候用這個應付過去。
不過有個情況是這樣的,
print("ok") if True else pass
這種寫法就會被編譯器說錯誤。
我常常需要用這種寫法,來避開在一些條件下不要執行這個動作。
像是
print(err_msg) if DEBUG_MODE else pass
有想過改成
print(err_msg) if DEBUG_MODE else print("", end="")
不過這種寫法無法兼容 Python 2 和 Python 3。
請教一下各位大大有沒有好的替代方案?
print(err_msg) if DEBUG_MODE else None
作者:
djshen (djshen)
2017-12-12 18:07:00包成function不是更方便?不然就用logging
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2017-12-13 05:08:00if DEBUG_MODE: print(errmsg) 不就好了
樓上正解 不需要else的情況寫else幹嘛呢而且這種語法幾乎各程式語言都有..
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2017-12-14 12:51:00胡說八道, if [exp]: [stmt] 就是標準 Python, 硬在這裡用 [exp] if [exp] else [exp] 才是莫名其妙, 這兩個語意根本完全不一樣, 在這裡用後者反而是扭曲原意
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2017-12-14 13:12:00推估應該是反串XD
作者:
cphe (魔鬼藏在垃圾筒裡)
2017-12-14 20:04:00是蠻怪的,而且改用logging也不會有else那原本加else是為了?
XD這原本就是pythonic的寫法啊 你要鞭也鞭情境別森7錯地方
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2017-12-15 09:23:00不是反串欸是認真這麼覺得, 大開眼界ㄎㄎㄎㄎㄎ
好喔clike最pythonic 而且我打那句根本也沒認真 結果引來認真魔人我也很難辦
這怎麼會是pythonic的寫法 在不需要else的地方用else? 我真的不懂如果是後綴不能少 else 真的不建議這樣寫