これを機能させることができないので、変数ageを文字列に入れようとしていますが、変数が正しく読み込まれません。
これが私のコードです:
import random
import sys
import os
age = 17
print(age)
quote = "You are" age "years old!"
このエラーを与えます:
File "C:/Users/----/PycharmProjects/hellophyton/hellophyton.py", line 9
quote = "You are" age "years old!"
^
SyntaxError: invalid syntax
Process finished with exit code 1
ここでは文字列フォーマッタまたは連結を使用する必要があります。連結するには、int
をstring
に変換する必要があります。 intと文字列を連結することはできません。
これにより、次のエラーが発生します。
TypeError: unsupported operand type(s) for +: 'int' and 'str'
フォーマット:
quote = "You are %d years old" % age
quote = "You are {} years old".format(age)
連結(片道)
quote = "You are " + str(age) + " years old"
編集:コメントでJ.F.セバスチャンが指摘したように、次のことも実行できます。
Python 3.6:
f"You are {age} years old"
Pythonの以前のバージョン:
"You are {age} years old".format(**vars())
これはそのための1つの方法です。
>>> age = 17
>>> quote = "You are %d years old!" % age
>>> quote
'You are 17 years old!'
>>>
次のように+
記号を使用して文字列に挿入する必要があります。
quote = "You are " + age + " years old!"
これを行う他の方法の詳細については、 Pythonの文字列ドキュメント を参照してください。