Python 板


LINE

各位大大好,在下是Python新手,想要確認一下我編碼的基礎概念有沒有問題 ,所以舉了一個例子,想請各位看看我的想法是否有誤~ https://imgur.com/a/iDdl0,這張圖是我目前概念的整理 舉例如下 : <文字編輯器Atom的編碼設定為'ascii',stdin.encoding == utf-8 ,stdout.encoding == utf-8> 1.當我在文字編輯器上輸入字串時 ,我的字串會被sys.stdin的編碼'utf-8'轉成unicode code point,然後sys.stdout 再將這些unicode code point編碼成位元組,再利用位元組在螢幕上渲染出字型 ,而當我要存檔時,unicode code point會被'ascii'編碼系統轉成位元組並儲存在 記憶體中,當我要開啟檔案時,文字編輯器Atom就會把存在記憶體中的位元組以'ascii' 的方式解碼成unicode code point 2.Python內部是以unicode code point進行處理 3.(問題) 當我輸入字串'倀',時,sys.stdin就會把它encoding成unicode code point,但是 當我直接輸入倀的unicode code point '\u5000'時,sys.stdin會怎麼做呢? 以上三點就是我的問題,新手第一次發問,如果有不對的發問方式,請各位不吝指教 ,謝謝~ --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.83.34.20
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1506142761.A.A97.html
1F:→ neil987: py2 ascii py3 utf-8 09/23 22:12
2F:→ jamesxxx1997: n大的意思是? 09/23 22:25
3F:推 neil987: 同樣的字串 在python 2.x跟3不一樣 09/23 23:17
4F:→ jamesxxx1997: 阿對吼,我忘了說我用Python3.6 09/23 23:34
5F:→ jamesxxx1997: 有人可以幫忙解惑嗎QQ 09/24 12:16
6F:→ neil987: 在py3裡面 你輸入'倀'跟輸入他的unicode一樣都是str 09/24 15:32
7F:→ neil987: https://i.imgur.com/F2tw5iZ.png 09/24 15:33
8F:→ jamesxxx1997: 恩...那n大,請問我三個問題中的第一個有哪裡錯嗎 09/24 16:26
9F:→ jamesxxx1997: 因為在我的觀念中,我輸入的東西是一堆bytes 09/24 16:28
10F:→ jamesxxx1997: 在stdin中,Python會把它轉成unicode code point 09/24 16:28
11F:→ jamesxxx1997: 所以我單純輸入一個字串,與輸入\uffff比較起來 09/24 16:30
12F:→ jamesxxx1997: \u因為有轉義字元\u,所以會讓stdin對字串'\u5000' 09/24 16:31
13F:→ jamesxxx1997: 做出與一般字串不同的encode方式? 09/24 16:32
14F:→ jamesxxx1997: 我畫個圖來解釋我的想法XDDDDD 09/24 16:35
15F:→ jamesxxx1997: https://imgur.com/pTtVFuA 09/24 16:49
16F:→ neil987: bytes 跟str這兩個是不同資料型態 09/24 16:58
17F:→ jamesxxx1997: rrr,我沒說這兩個是同一個型態阿 09/24 20:09
18F:→ jamesxxx1997: 我在鍵盤上輸入的東西其實是bytes,被stdin轉成unic 09/24 20:10
19F:→ jamesxxx1997: unicode code point 09/24 20:10
20F:→ jamesxxx1997: n大,很謝謝你的回覆,不過我的問題跟你的回答 09/24 20:13
21F:→ jamesxxx1997: 一樣XDDDDD 09/24 20:13
22F:→ s860134: 你把 stdin 導到檔案不就得了... 09/25 08:28
23F:→ s860134: 導到檔案不會騙你吧XD 09/25 08:28
24F:→ jamesxxx1997: 恩...s大,我真的是自己試過,爬文也爬過 09/25 23:07
25F:→ jamesxxx1997: stackoverflow也查過,但還是不懂,所以才來問 09/25 23:08
26F:→ jamesxxx1997: 自己嘗試過不下百次,但越試越亂,所以才會來問 09/25 23:09
27F:→ jamesxxx1997: 還是我發問態度不好,或圖不清楚,都可以說 09/25 23:10
28F:→ jamesxxx1997: 但關於爬文或嘗試,我真的盡力了,也卡住一個多星期 09/25 23:10
29F:→ jamesxxx1997: 所以才會把問題濃縮,畫成圖來整理問題並提問 09/25 23:11
30F:→ jamesxxx1997: 所以真的很希望您能看一下我的問題敘述,並跟我說 09/25 23:12
31F:→ s860134: 我的理解是這樣,你的問題混雜兩件事情 09/26 00:22
32F:→ s860134: 你設定文自編輯器這些編碼,只是讓你自己看到而已 09/26 00:23
33F:→ s860134: 跟 python interpreter 吃進去的沒什麼關係 09/26 00:23
34F:→ s860134: 對 python3 來說 '\u5000' == '倀' 09/26 00:25
35F:→ s860134: 兩者之間的差異在轉成 byte code 時就已經被消除了 09/26 00:31
36F:→ jamesxxx1997: 恩恩,昨天有請教過同學,發現我想太多了 09/26 17:19
37F:→ jamesxxx1997: 我還是碰到問題時再把code丟上來,這樣問題比較明確 09/26 17:19
38F:→ jamesxxx1997: 謝謝解答唷~~~~~~~ 09/26 17:20







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP