2012-12-26 52 views
27

好的,我知道如何打印變量和字符串。但我怎麼能打印像「我的字符串」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(如上所述)。

print "I have %s" % card.price(使用string formatting

print " ".join(map(str, ["I have", card.price]))(通過加入列表)

有很多方法可以做到同樣的,其實。我寧願第二個。

+0

即使結果不是字符串,但數字是否可以嗎? – user203558

+0

是的,沒關係。儘管%d也會起作用。 – aemdy

10

這裏沒有提到的(令人驚訝的)是簡單的連接。

實施例:

foo = "seven" 

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

結果:

她與七個小男人

另外,如Python 3中的,該方法%不推薦使用。不要使用它。