python中str()和repr()的區別


 1 >>> s = 'Hello, world.'
 2 >>> str(s)
 3 'Hello, world.'
 4 >>> repr(s)
 5 "'Hello, world.'"
 6 >>> str(1.0/7.0)
 7 '0.142857142857'
 8 >>> repr(1.0/7.0)
 9 '0.14285714285714285'
10 >>> x = 10 * 3.25
11 >>> y = 200 * 200
12 >>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...'
13 >>> print s
14 The value of x is 32.5, and y is 40000...
15 >>> # The repr() of a string adds string quotes and backslashes:
16 ... hello = 'hello, world\n'
17 >>> hellos = repr(hello)
18 >>> print hellos
19 'hello, world\n'
20 >>> # The argument to repr() may be any Python object:
21 ... repr((x, y, ('spam', 'eggs')))
22 "(32.5, 40000, ('spam', 'eggs'))"

一種是通過str函數,他會把值轉換為合理形式的字符串,以便用戶可以理解;另一種是通過repr函數,她會創建一個字符串,以合法的Python表達式的形式來表示值。

repr也可以做``反引號的實現。如果希望答應一個包含數字的句子,那么反引號就很有用了。比如:

1 >>> temp = 100
2 >>> print 'hello' + temp
3 
4 Traceback (most recent call last):
5   File "<pyshell#1>", line 1, in <module>
6     print 'hello' + temp
7 TypeError: cannot concatenate 'str' and 'int' objects
8 >>> print 'hello'+`temp`
9 hello100
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM