web-dev-qa-db-ja.com

Pythonでブール値を文字列に連結するにはどうすればよいですか?

以下を達成したい

answer = True
myvar = "the answer is " + answer

myvarの値を「答えはTrue」にします。 Javaでこれを実行できると確信しています。

62
travis1097
answer = True
myvar = "the answer is " + str(answer)

暗黙的なキャストは重大な論理エラーをマスクする可能性があるため、Pythonは暗黙的なキャストを行いません。文字列そのものに答えを投げてその文字列表現( "True")を取得するか、次のような文字列フォーマットを使用します。

myvar = "the answer is %s" % answer

答えはTrueに設定する必要があることに注意してください(大文字と小文字の区別が重要です)。

110

推奨される方法は、str.formatにキャストを処理させることです( docs )。 %s置換を含むメソッドは、最終的に廃止される可能性があります( PEP3101 を参照)。

>>> answer = True
>>> myvar = "the answer is {}".format(answer)
>>> print myvar
the answer is True
11
wim
answer = True
myvar = "the answer is " + str(answer)

または

myvar = "the answer is %s" % answer
7
Squazic

答え= True

myvar = '答えは' + str(answer)#答え変数はブール形式であるため、ブール値を文字列形式に変換する必要があり、これを使用して簡単に行うことができます

print(myvar)

1

いわゆるf文字列の使用:

answer = True
myvar = f"the answer is {answer}"

それなら

print(myvar)

私は取得します:

the answer is True

変数が印刷テキストに表示される順序を心配する必要がないので、f文字列が好きです。これは、文字列として印刷される複数の変数がある場合に役立ちます。

1
BCArg

Python(3.7.0)の最新バージョンでは、f-stringsが導入されています。

注意:

_boolean = True
output = 'The answer is' + boolean
_

ブール値は文字列に連結できないため、機能しません。

F-stringを使用すると、次のように、booleanの文字列バージョンを作成し、それを一度に出力文字列に連結できます。

_boolean = True
output = f'The answer is {boolean}'
_

F-stringsを使用するには、変数(任意のタイプ)を中括弧{}に入れ、文字列の前にfを置きます(上記を参照)。

注:これは、整数およびprint()関数に解析できる他のデータ型でも機能します。

0