2012-12-26 10 views
27

いいえ、変数と文字列の出力方法は分かりました。しかし、どうすれば "My string" card.price(これは私の変数)のようなものを印刷できますか?つまり、私のコードは print "I have " (and here I would like to print my variable card.price)です。カンマで区切られた複数の値を印刷することにより変数と文字列をPythonで返します

答えて

28

print "I have", card.price 

print statement意志出力スペースで区切られた各表現、改行が続きます。

あなたはもっと複雑な書式が必要な場合は、''.format() methodを使用します。

print "I have: {0.price}".format(card) 

または% string formatting operator古く、半非推奨を使用します。

+0

フォーマット文字列と基本文字列連結の可能性はどうですか?さまざまな目的のために異なるアプローチを示していい答えを出すことができました。 – s1lence

+0

@Martijn Pieters:私は最初に 'format'答えでナノ秒でした) – alexvassel

+0

@alexvassel:しかし私のドキュメントリンクは、より良い例であり、'% '文字列フォーマットも指しています。 :-P –

7

あなたは、Python 2.7(ない3)を使用すると仮定:

print "I have", card.price(前述したように)。

string formattingを使用して)

print "I have %s" % card.price

print " ".join(map(str, ["I have", card.price]))(リストに参加することによって)

実際には、同じことを行うための方法はたくさんあります。私は2番目を好むだろう。

+0

結果が文字列ではなく数値であっても大丈夫ですか? – user203558

+0

はい、それは問題ありません。 %dでも動作しますが。 – aemdy

10

ここで言及されていないもの(驚くほど)は単純連結です。

例:

foo = "seven" 

print("She lives with " + foo + " small men") 

結果:

彼女は7人の小さな男性さらに

に住んでいるが、Pythonの3のように、%方法が推奨されていません。それを使わないでください。

関連する問題