Python3のチュートリアルでは、「比較や他のブール式の結果を変数に代入することは可能です」と記載されています。指定された例は次のとおりです。Python: 'or'演算子を使って文字列を比較する
>>> string1, string2, string3 = '', 'Trondheim', 'Hammer Dance'
>>> non_null = string1 or string2 or string3
>>> non_null
'Trondheim'
文字列を比較するとき、正確に "or"演算子は何をしますか?なぜトロンヘイムは選ばれたのですか?
もしも、string1 == Trueならばnon_null = string1 else string2 == trueならばnon_null = string2 else string3 == True then non_null = string3 Pythonでは空でない文字列が真であるので、string2で止まります。 – bi0phaz3
@ bi0phaz3: "string" == Trueはfalseです。あなたはbool(string1)== Trueを意味します。 – RemcoGerlich
Pythonは暗黙のうちにキャストできます。 – bi0phaz3