2011-06-14 57 views
4

任何人都可以解釋我通過「打印」輸出變量和當我只寫變量名輸出它之間的Python shell中的差異?在python shell中打印函數

>>> a = 5 
>>> a 
5 
>>> print a 
5 
>>> b = 'some text' 
>>> b 
'some text' 
>>> print b 
some text 

當我這樣做與文本我理解差異,但在int或浮動 - 我不知道。

回答

10

剛進入一個表達式(如變量名)將實際輸出由repr()函數返回,而print將結果轉換成用str()功能的字符串的結果的表示。>>> S =「 ABC」

打印repr()會產生相同的結果直接輸入表達式:

>>> "abc" 
'abc' 
>>> print repr("abc") 
'abc' 
2

Python的外殼總是返回最後計算的值。當a是5時,它評估爲5,因此您可以看到它。當您致電print時,print輸出值(不含引號)並不返回任何內容,因此print完成後不會產生任何結果。因此,在'some test'中評估b的結果並僅在some text中打印結果。