web-dev-qa-db-ja.com

変数を文字列(引用符)に入れる

これを機能させることができないので、変数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
10
Tim

ここでは文字列フォーマッタまたは連結を使用する必要があります。連結するには、intstringに変換する必要があります。 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())
13
Pythonista

これはそのための1つの方法です。

>>> age = 17
>>> quote = "You are %d years old!" % age
>>> quote
'You are 17 years old!'
>>> 
0
Joe T. Boka

次のように+記号を使用して文字列に挿入する必要があります。

quote = "You are " + age + " years old!"

これを行う他の方法の詳細については、 Pythonの文字列ドキュメント を参照してください。

0
gr1zzly be4r