str(object)
:將指定的值轉換為字串。用於轉換bytes時,可指定編碼和錯誤處理方式
repr(object)
:返回指定值的字串表示
print
(repr
("hello, \nworld!"))
# 'hello, \nworld!'
print
(str
("hello, \nworld!"))
# hello,
# world!
函式str()
和repr()
都可以將python中的物件轉換為字串,它們的使用以及輸出都非常相似。但也存在不一致的情況。
import decimal
a = decimal.decimal(
1.25
)print
(str
(a),
repr
(a))
# 1.25 decimal('1.25')
from datetime import date
b = date.today(
)print
(str
(b),
repr
(b))
# 2019-05-22 datetime.date(2019, 5, 22)
這兩者之間到底有什麼區別呢?總結來說以下幾點:
```python
obj == eval(repr(obj))
```
但需要提醒的是,這個等式不是所有情況下都成立。
(最近更新:2023年05月16日)
str與repr的區別
python列印值的時候會保持該值在python 中的狀態,不是使用者所希望看到的狀態。而使用print列印值則不一樣,print列印出來的值是使用者所希望看到的狀態。例如 hello,world hello,world python列印出來的值是給python理解的,這裡python理解為字串,所...
python之repr 和str 的區別
repr repr object 返回乙個可以用來表示物件的可列印字串 首先,嘗試生成這樣乙個字串,將其傳給 eval 可重新生成同樣的物件 否則,生成用尖括號包住的字串,包含型別名和額外的資訊 比如位址 乙個類 class 可以通過 repr 成員來控制repr 函式作用在其實例上時的行為。str...
Python中str 和repr 函式的區別
在 python 中要將某一型別的變數或者常量轉換為字串物件通常有兩種方法,即 str 或者 repr 區別與使用 函式str 用於將值轉化為適於人閱讀的形式,而repr 轉化為供直譯器讀取的形式 如果沒有等價的語法,則會發生syntaxerror 異常 適合開發和除錯階段使用。number 123...