表題の通りなのですが、
pythonでrubyで言うところのnilガード的な書き方はしても良いと思われますか?
nilガードとも少し違うかもですが、三項演算子を何度も書くより楽なので、Pythonでもかけるとすごくありがたいです。
今のところpylintでは怒られないような印象ですが・・・
次のような書き方です。
a = 10 b = a or 100 print(b) -> 10
a = None b = a or 100 print(b) -> 100
a = 0 b = a or 100 print(b) -> 100
ネットで調べても情報が見当たらなかったため教えて頂きたいです。
以上、よろしくお願いします。
おおっ。そんな書き方できるとは知りませんでした。
https://blog.pyq.jp/entry/python_kaiketsu_181016
貼って頂いたサイト内に公式ドキュメントへのリンクあったので見てみたのですが、
他の方もおっしゃるように「言語仕様的には」問題ないようですね。
https://docs.python.org/ja/3/library/stdtypes.html#boolean-operations-and-or-not
リンクありがとうございました。
(・∀・)b
回答4件
あなたの回答
tips
プレビュー