1樓:千鋒教育
可以認為一個是用的是str方法,目的是向終端顯示;一個用的repr方法,目的是把資料結構和型別表達出來
這是 python 2 特別討厭的一點,以至於我實在忍受不了寫了個 repl_py27 來繞過該問題。不過最終還是遷移到 python 3 啦 =w=
python 2 的世界是個 ascii 的世界,unicode 是後來加的,所以使用 repr 顯示的時候是把所有非 ascii 的字元轉義顯示的。你要直接把字串寫出來的話,python 2 就不會進行任何轉義了,於是在支援的終端上,中文就能正常顯示了。
print 遇到非字串時,會呼叫 str() 函式將物件轉成字串再輸出:
>>> class t(object):
... def __repr__(self):
... return ''
... def __str__(self):
... return ''
...>>> print t()
而很多物件的 __str__ 方法是沒有定義的,於是 str() 函式改呼叫它的 __repr__ 方法。
又:python 2 的字串和 unicode 的 str() 輸出都是經過轉義的。這也是我討厭 python 2 的另一個重要原因:
>>> u'中文'
u'\u4e2d\u6587'
>>> '中文'
'\xe4\xb8\xad\xe6\x96\x87'
2樓:武者的底線
前面加r 會輸入原始
python中對%轉義為何是%%,%和\轉義有什麼區別嗎
3樓:lps小劉
%佔位後,後面得有與之匹配的解釋符連線
單獨%是不用轉義版的,如權:
print('growth rate: %d %%' % 7)>>>growth rate: 7 %
print('%')
>>>%
print('\%')
>>>\%
print('%%')
>>>%%
4樓:西西哩的小馬甲
區別是因為python直譯器bai
會把7交給第一個du%號後面的d,而兩zhi個%%號會被解析成dao一個%號。
'growth rate: %d %%' % 7這行**你可版以執行一下權,轉義第二個%號應該是\。
常見電腦故障
開機無顯示
電腦開機無顯示,首先要檢查的就是是bios。主機板的bios中儲存著重要的硬體資料,同時bios也是主機板中比較脆弱的部分,極易受到破壞,一旦受損就會導致系統無法執行,出現此類故障一般是因為主機板bios被cih病毒破壞造成(當然也不排除主機板本身故障導致系統無法執行)。
一般bios被病毒破壞後硬碟裡的資料將全部丟失,所以可以通過檢測硬碟資料是否完好來判斷bios是否被破壞。
5樓:生命線的掙扎
為什麼要對%進行轉義?
『%』的% 就是一個普通 的字串而已
4%4 這裡的% 又是一種運算子號
python 什麼字元需要轉義
6樓:匿名使用者
不是什麼字元需要轉義,而是字元前面加斜槓後意思變了,所以叫轉義字元
比如\n 表示換行,不是字母n
python new什麼情況下,Python new 為什麼在Python2中程式碼可以執行,在Python3中提示object沒有引數?
文件類共創空間 這篇文章主要介紹了python中的 init 和 new 的區別和例項詳解它們的作用,需要的朋友可以參考下 一 init 方法是什麼?使用python寫過物件導向的 的同學,可能對 init 方法已經非常熟悉了,init 方法通常用在初始化一個類例項的時候。例如 複製 如下 codi...
人在什麼情況下會相信命運,又在什麼情況下會不信命一意孤行
在廣利橋讀西遊記的喜鵲 人經歷的越多,隨著年紀的增長都會更加深信命運是存在的!都是安排好的。天道無常,會產生變數的也很少。什麼人生下來做什麼事。註定的!不可能每個都發財!不可能每個都智慧超群!有的人看一遍就會解題,知識吸收的快。你就算天天學。天天看!真的不如人家一小時學的快!就是這麼打擊人!沒辦法這...
什麼情況下會顯得特別孤單,人在什麼情況下會感到孤獨
達 和一群多年不見的朋友們聚會狂歡,然而狂歡的是他們,你卻只能在一旁默默的看著,插不上一句話!你有一個很喜歡很喜歡的人,而有一天你準備和她 他 表白的時候,她 他 卻和你說她有喜歡的人了! 回憶 凌晨突然噩夢驚醒,身邊空無一人,翻遍手機,也找不到一個可以說說剛才噩夢的人,找不到一點心裡寬慰。 以心 ...