Pythonには実際にブール値が含まれていますか?私はあなたができることを知っています:
checker = 1
if checker:
#dostuff
しかし、私は非常にうんざりしていて、Javaでブール値を見て楽しんでいます。例えば:
Boolean checker;
if (someDecision)
{
checker = true;
}
if(checker)
{
//some stuff
}
Pythonのブール値のようなものはありますか?そのようなものはドキュメントには見つかりません。
checker = None # not necessary
if some_decision:
checker = True
if checker:
# some stuff
[編集]
詳細については、 http://docs.python.org/library/functions.html#bool を参照してください。
必要に応じて1がTrueに変換されるため、コードも機能します。実際にはPythonは長い間(古いCのように)ブール型を持っていませんでした、そして何人かのプログラマーはブール値の代わりに整数値を使うでしょう。
True
とFalse
というブール値の組み込み関数は大文字になります。
checker = bool(some_decision)
をちょっとした省略形として実行できることにも注意してください - bool
はTrue
またはFalse
のみを返します。
__nonzero__
または__len__
を定義するクラス はこれらの関数の結果に応じてTrue
またはFalse
になりますが、他のすべてのオブジェクトのブール結果はTrue
になります(None
オブジェクトを除く)。空のシーケンス、および数値のゼロ)。
True
...とFalse
は明らかです。
そうでなければ、整数0
および浮動小数点0.0
と同様にNone
はFalseに評価されます(ただし、このようなフロートは使用しません)。また、空のリスト[]
、空の連符()
、空の文字列''
または""
はFalseと評価されます。
関数bool()
で試してみてください。
bool([])
bool(['a value'])
bool('')
bool('A string')
bool(True) # ;-)
bool(False)
bool(0)
bool(None)
bool(0.0)
bool(1)
等..
ブール型はドキュメントで定義されています。
http://docs.python.org/library/stdtypes.html#boolean-values
docからの引用:
ブール値は、FalseとTrueの2つの定数オブジェクトです。それらは真理値を表現するために使用されます(他の値も偽または真と見なすことができますが)。数値コンテキストでは(例えば算術演算子への引数として使用される場合など)、それらはそれぞれ整数0および1のように動作します。値が真理値として解釈できる場合、組み込み関数bool()を使用して任意の値をブール値にキャストできます(上記の真理値テストを参照)。
それらはそれぞれFalseとTrueと書かれています。
そのため、Javaコードで中括弧を削除し、true
をTrue
に変更すれば大丈夫です:)
はい、bool
データ型があります(これはint
から継承し、True
およびFalse
の2つの値のみを持ちます)。
しかし、Pythonにはすべてのオブジェクトに対してboolean-able
という概念があります。これは、関数bool([x])
が呼び出されるときに使用されます。
object。0以外 および python-in-objects-in-python を参照してください。 。
boolean flag = True
を宣言するJavaとは異なり、PythonではmyFlag = True
を宣言するだけです。
Pythonはこれをブール変数として解釈します