1
"if"ステートメントで簡単なテストを行っていましたが、次のコードフラグメントによって、出力が期待通りに出力されます。 >>>ローゼズの次のPython 3 "if"はなぜ機能しますか?
ケース1
x = True
if x:
print("Roses are red")
結果は通訳も
に、赤:
type(x)
>>> <class 'bool'>
予想通り。
は、次に私が試した:
ケース再び2
x = "True"
if x:
print("Roses are red")
を、私は結果を得た:誰かが中に説明でき
>>> type(x)
<class 'str'>
:バラは赤い
であり、 「if条件が満たされている」という2番目のケース(ifそれは状況を記述する適切な方法です)、print()は実行されますか?
私は、正しい操作は、「これはない」「という表現は、」真ブール値に評価のみたときに実行される
if <expression>:
<do this>
ようなものになるだろうと思っているだろう。 「式」がの文字列のときに「これを実行する」のはなぜですか?
https://docs.python.org/3/reference/datamodel.html?highlight=__bool__#object.__bool__ – gd1
非常に迅速な回答と参照をいただきありがとうございます。わかりました。 –
バランスのとれた不要なダウンボォート。質問は重複として閉じなければなりませんが、* 1)あなたが探しているものが分からない場合は、同様の質問を検索することは自明ではありません。 2)私は、SOコミュニティとPythonコミュニティの新人であるOPが、恐ろしい質問を書いておらず、説明なしで-1を得る価値はないと思います。 – gd1