成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

學習python處理python編碼

開發 后端
概括從python開始就處理unicode字符,python源文件的編碼與解碼,我們寫的python程序從產生到執行的過程如下,

 概括、從python1.6開始就可以處理unicode字符了。

一、幾種常見的編碼格式。

1.1、ascii,用1個字節表示。

1.2、UTF-8,用1個至三個字節表示,表示ascii碼時只占用1個字節,ascii編碼是UTF-8的子集。

1.3、UTF-16,用2個字節表示,在python中,unicode的含義就是UTF-16。

二、python源文件的編碼與解碼,我們寫的python程序從產生到執行的過程如下:

編輯器---->源代碼---->解釋器---->輸出結果

2.1、編輯器決定源代碼的編碼格式(在編輯器中設定)

2.2、也必須要解釋器知道源代碼的編碼格式(很遺憾很難從編碼的數據獲知源文件的編碼格式)

2.3、補充:在Windows下當用UltraEdit把源代碼存成UTF-8時,會在文件中記錄BOM標志(不必祥究)這樣ActivePython解釋器會自動識別源文件是UTF-8格式,但是如果用eclipse編輯源文件,雖然在編輯器中指定文件編碼為UTF-8,但是因為沒有記入BOM標志,所以必須在源文件開始處加上#coding=utf-8,用注釋來提示解釋器源文件的編碼方式挺有意思。

2.4、舉例:例如我們要向終端輸出"我是中國人"。 

  1. #coding=utf-8     告訴python解釋器用的是utf-8編碼,我用的是eclipse+pydev     
  2. print "我是中國人"  #源文件本身也要存成UTF-8編碼    

三、編碼的轉換,兩種編碼的轉換要用UTF-16作為中轉站。

舉例:如果有一個文本文件jap.txt,里面有內容 "私は中國人です。",編碼格式是日文編碼SHIFT_JIS,

還有一個文本文件chn.txt,內容是"中華人民共和國",編碼格式是中文編碼GB2312。

我們如何把兩個文件里的內容合并到一起并存儲到utf.txt中并且不顯示亂碼呢,可以采用把兩個文件的內容都轉成UTF-8格式,因為UTF-8里包含了中文編碼和日文編碼。

  1. #coding=utf-8     
  2.     
  3. try:     
  4.     JAP=open("e:/jap.txt","r")     
  5.     CHN=open("e:/chn.txt","r")     
  6.     UTF=open("e:/utf.txt","w")     
  7.          
  8.     jap_text=JAP.readline()     
  9.     chn_text=CHN.readline()     
  10.     #先decode成UTF-16,再encode成UTF-8     
  11.     jap_text_utf8=jap_text.decode("SHIFT_JIS").encode("UTF-8"#不轉成utf-8也可以     
  12.     chn_text_utf8=chn_text.decode("GB2312").encode("UTF-8")#編碼方式大小寫都行utf-8也一樣     
  13.     UTF.write(jap_text_utf8)     
  14.     UTF.write(chn_text_utf8)     
  15.          
  16. except IOError,e:     
  17.     print "open file error",e    

 

四、Tk庫支持ascii,UTF-16,UTF-8

 

  1. #coding=utf-8     
  2.     
  3. from Tkinter import *     
  4.     
  5. try:     
  6.     JAP=open("e:/jap.txt","r")     
  7.     str1=JAP.readline()     
  8.     
  9. except IOError,e:     
  10.     print "open file error",e     
  11.     
  12. root=Tk()     
  13.     
  14. label1=Label(root,text=str1.decode("SHIFT_JIS")) #如果沒有decode則顯示亂碼     
  15. label1.grid()     
  16.     
  17. root.mainloop()    

以上是學習python處理python編碼的基本過程,希望對大家有幫助。

【編輯推薦】

  1.  Python 3.2 alpha 2發布 改善單元模塊
  2. 全能選手 看看Python應乎潮流的72變
  3. Python自動單元測試框架的應用詳解
  4. Perl Unicode全程攻略
  5. Python unicode ascii編碼在windows中的實際應用
  6. Python unicode ascii編碼在windows上的問題的解決

 

責任編輯:佚名 來源: JavaEye論壇
相關推薦

2010-03-11 16:03:04

Python prin

2023-11-28 15:18:24

Python

2010-03-01 14:02:26

Python批處理語言

2024-04-18 10:26:14

模塊Python

2010-02-01 10:21:36

Python編碼轉換

2015-07-31 09:27:56

安全編碼代碼審計Python

2016-02-15 14:13:39

Python編碼環境

2022-12-13 07:55:00

Python地理編碼

2009-08-17 15:07:18

Python學習經驗

2009-06-10 15:27:08

netbeans 編碼亂碼

2024-02-26 16:40:58

2017-03-25 21:32:40

Python編碼

2024-03-04 07:50:04

Python字符編碼網絡通信

2018-01-22 17:02:48

Python字符編碼ASCII

2010-03-23 14:34:44

Python vim檢

2020-12-16 15:56:26

機器學習人工智能Python

2021-01-28 13:16:27

Python編程語言

2024-02-04 16:22:13

Python流式輸出開發

2010-02-02 17:18:16

Python圖像處理

2016-08-22 17:37:24

Python圖像處理搜索引擎
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色久影院| 日本欧美黄色片 | 97精品超碰一区二区三区 | 日韩精品一区二区三区视频播放 | 在线观看第一区 | 亚洲女人的天堂 | 久久成人免费视频 | 国内在线视频 | 国产真实精品久久二三区 | sese视频在线观看 | 免费一级欧美在线观看视频 | 久久99精品视频 | 国产精品一区二区三 | 精品一区二区三区电影 | 懂色中文一区二区在线播放 | a国产视频 | 一区二区亚洲 | 亚洲精品一区二区在线观看 | 成人欧美一区二区三区 | 7799精品视频天天看 | 麻豆视频在线免费看 | 波多野结衣av中文字幕 | 中国大陆高清aⅴ毛片 | 亚洲五码久久 | 精品网| 99免费精品 | 一级黄色生活视频 | 日韩一级电影免费观看 | 色爱综合网 | 亚洲欧洲一区 | 国产福利视频网站 | 亚洲精品在线国产 | 国产精品久久久久久影院8一贰佰 | 日本不卡免费新一二三区 | 欧美性久久久 | 九色视频网站 | 国产情侣在线看 | 日韩免费av | 国产精品久久久久久久久大全 | 天天综合日日夜夜 | 国产精品日日做人人爱 |