當前位置:首頁 » 編程語言 » pythonreprstr

pythonreprstr

發布時間: 2022-09-05 05:07:36

1. python repr和str有什麼區別

函數str() 用於將值轉化為適於人閱讀的形式,而repr() 轉化為供解釋器讀取的形式
內建函數str()和repr() (representation,表達,表示)或反引號操作符(``)可以方便地以字元串的方式獲取對象的內容、類型、數值屬性等信息。

str()函數得到的字元串可讀性好(故被print調用)
repr()函數得到的字元串通常可以用來重新獲得該對象,通常情況下 obj==eval(repr(obj)) 這個等式是成立的。這兩個函數接受一個對象作為其參數,返回適當的字元串。
事實上repr()和``做一樣的事情,返回一個對象的「官方」字元串表示。其結果絕大多數情況下(不是所有)可以通過求值運算(內建函數eval())重新得到該對象。
str()則不同,它生成一個對象的可讀性好的字元串表示,結果通常無法用eval()求值,但適合print輸出。

2. python __repr__的作用

1,嘗試生成這樣一個字元串,將其傳給 eval可重新生成同樣的對象 。

2,否則,生成用尖括弧包住的字元串,包含類型名和額外的信息。

3. 新手程序員學習python編程需要了解哪些技巧

python編程開發技術是目前比較熱門的編程語言之一了,而對於大多數新接觸python編程的程序員來說,如果能夠掌握一定的編程技巧的話會大大降低我們掌握python編程的難度,下面IT培訓http://www.kmbdqn.cn/就一起來了解一下具體內容吧。



建議1:理解Pythonic概念


建議2:編寫Pythonic代碼


建議3:理解Python與C語言的不同之處


建議4:在代碼中適當添加註釋


建議5:通過適當添加空行使代碼布局更為優雅、合理


建議6:編寫函數的4個原則


建議7:將常量集中到一個文件


建議8:利用assert語句來發現問題


建議9:數據交換值的時候不推薦使用中間變數


建議10:充分利用Lazyevaluation的特性


建議11:理解枚舉替代實現的缺陷


建議12:不推薦使用type來進行類型檢查


建議13:盡量轉換為浮點類型後再做除法


建議14:警惕eval()的安全漏洞


建議15:使用enumerate()獲取序列迭代的索引和值


建議16:分清=與is的適用場景


建議17:考慮兼容性,盡可能使用Unicode


建議18:構建合理的包層次來管理mole


建議19:有節制地使用from?import語句


建議20:優先使用absoluteimport來導入模塊


建議21:i+=1不等於++i


建議22:使用with自動關閉資源


建議23:使用else子句簡化循環(異常處理)


建議24:遵循異常處理的幾點基本原則


建議25:避免finally中可能發生的陷阱


建議26:深人理解None,正確判斷對象是否為空


建議27:連接字元串應優先使用join而不是+


建議28:格式化字元串時盡量使用.format方式而不是%


建議29:區別對待可變對象和不可變對象


建議30:[]、()和{}:一致的容器初始化形式


建議31:記住函數傳參既不是傳值也不是傳引用


建議32:警惕默認參數潛在的問題


建議33:慎用變長參數


建議34:深入理解str()和repr()的區別


4. Python 中 str 和 repr 的區別

盡管str(),repr()和``運算在特性和功能方面都非常相似,事實上repr()和``做的是完全一樣的事情,它們返回的是一個對象的「官方」字元串表示,也就是說絕大多數情況下可以通過求值運算(使用內建函數eval())重新得到該對象。

但str()則有所不同,str()致力於生成一個對象的可讀性好的字元串表示,它的返回結果通常無法用於eval()求值,但很適合用於print語句輸出。需要再次提醒的是,並不是所有repr()返回的字元串都能夠用 eval()內建函數得到原來的對象。 也就是說 repr() 輸出對 Python比較友好,而str()的輸出對用戶比較友好。

雖然如此,很多情況下這三者的輸出仍然都是完全一樣的。 大家可以看下下面的代碼,來進行對比
>>> s = 'Hello, world.'
>>> str(s)
'Hello, world.'
>>> repr(s)
"'Hello, world.'"
>>> str(0.1)
'0.1'
>>> repr(0.1)
'0.10000000000000001'
>>> x = 10 * 3.25
>>> y = 200 * 200
>>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...'
>>> print s
The value of x is 32.5, and y is 40000...
>>> # The repr() of a string adds string quotes and backslashes:
... hello = 'hello, world\n'
>>> hellos = repr(hello)
>>> print hellos
'hello, world\n'
>>> # The argument to repr() may be any Python object:
... repr((x, y, ('spam', 'eggs')))
"(32.5, 40000, ('spam', 'eggs'))"

5. 在python中int、str、repr分別是什麼函數類順便問下:類是什麼請大神指教。

int、str 都是類
repr是函數。
仔細的講,內容還是比較多,函數和類在培訓班可以講一兩節課的。
通俗的講:
函數就是若干腳本語句的集合,執行這個函數,就執行了這些語句。
類就是多個函數的集合。
實際操作就還需要很多的概念支持,比如實例化對象、參數傳遞、變數作用域、可變不可變變數操作、返回值,等等等等。

6. 菜鳥求大大們解釋Python里str函數和repr函數的區別

GG上有結果,轉過來,順便我自己也看看。

str()一般是將數值轉成字元串。
repr()是將一個對象轉成字元串顯示,注意只是顯示用,有些對象轉成字元串沒有直接的意思。

如list,dict使用str()是無效的,但使用repr可以,這是為了看它們都有哪些值,為了顯示之用。


EG:

>>>s='Hello,world.'
>>>str(s)
'Hello,world.'
>>>repr(s)
'Hello,world.'
>>>str(0.1)
'0.1'
>>>repr(0.1)
'0.10000000000000001'
>>>x=10*3.25
>>>y=200*200
>>>s='Thevalueofxis'+repr(x)+',andyis'+repr(y)+'...'
>>>prints
Thevalueofxis32.5,andyis40000...
>>>#Therepr():
...hello='hello,world '
>>>hellos=repr(hello)
>>>printhellos
'hello,world '
>>>#Theargumenttorepr()maybeanyPythonobject:
...repr((x,y,('spam','eggs')))
"(32.5,40000,('spam','eggs'))"
>>>#:
...`x,y,('spam','eggs')`
"(32.5,40000,('spam','eggs'))"

7. Python里str函數和repr函數有什麼區別

這個簡單
str是顯示給用戶用的
repr是給機器用的。
class
A(object):
def
__str__(self):
print
"this
is
A
class"
def
__repr__(self):
print
"this
is
repr
func"
a
=
A()
比如print
a
調用的是a的__str__方法
而如果你在python解釋器里直接敲a後回車,調用的是a.__repr__()方法

8. python str() 和 repr() 出現bug了

在python2中,數字以0開頭的表示8進制,所以

0521 = 5 × 64 + 2 × 8 + 1 = 337

repr返回的是表達式的字元串表示,而在交互模式下直接輸入表達式的效果是 print repr(expr)

repr(0521) == '337',而repr(repr(0521)) == "'337'"。

所以輸出的結果等效與下面的:

>>>repr(0521)#相當於printrepr(repr(0521))
'337'
>>>x=0521
>>>x#相當於printrepr(x)
337

9. python str和repr的區別

盡管str(),repr()和``運算在特性和功能方面都非常相似,事實上repr()和``做的是完全一樣的事情,它們返回的是一個對象的「官方」字元串表示,也就是說絕大多數情況下可以通過求值運算(使用內建函數eval())重新得到該對象。

但str()則有所不同,str()致力於生成一個對象的可讀性好的字元串表示,它的返回結果通常無法用於eval()求值,但很適合用於print語句輸出。需要再次提醒的是,並不是所有repr()返回的字元串都能夠用 eval()內建函數得到原來的對象。 也就是說 repr() 輸出對 Python比較友好,而str()的輸出對用戶比較友好。

熱點內容
電腦怎麼查卡配置 發布:2025-01-14 20:01:29 瀏覽:27
手機怎麼控制伺服器 發布:2025-01-14 19:58:46 瀏覽:307
php難招 發布:2025-01-14 19:06:07 瀏覽:489
sublime編譯php 發布:2025-01-14 18:57:16 瀏覽:307
雲計算伺服器是什麼 發布:2025-01-14 18:56:22 瀏覽:44
vip域名查詢ftp 發布:2025-01-14 18:46:48 瀏覽:116
格式化linux 發布:2025-01-14 18:35:14 瀏覽:595
如何進入安卓原生市場 發布:2025-01-14 18:22:06 瀏覽:560
台式電腦找不到伺服器 發布:2025-01-14 18:19:58 瀏覽:423
androidsdk網盤 發布:2025-01-14 18:17:43 瀏覽:82