成人免费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

2015-07-31 09:27:56

安全編碼代碼審計Python

2016-02-15 14:13:39

Python編碼環境

2022-12-13 07:55:00

Python地理編碼

2010-02-01 10:21:36

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編碼

2018-01-22 17:02:48

Python字符編碼ASCII

2024-03-04 07:50:04

Python字符編碼網絡通信

2010-03-23 14:34:44

Python vim檢

2010-02-02 17:18:16

Python圖像處理

2016-08-22 17:37:24

Python圖像處理搜索引擎

2009-02-25 10:34:57

異常處理體系Python

2020-12-16 15:56:26

機器學習人工智能Python

2021-01-28 13:16:27

Python編程語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲综合在线视频 | 一级做a爰片性色毛片视频停止 | 国产特级毛片aaaaaa喷潮 | 黄色精品| 国内精品在线视频 | 激情一区二区三区 | 亚洲精品乱码久久久久v最新版 | 少妇一区二区三区 | 国产日韩一区二区三区 | 国产羞羞视频在线观看 | 国产精品视频在线播放 | 亚洲第一在线 | 成人精品在线观看 | 精品一区二区三区免费视频 | 欧美一区二区三区在线观看视频 | 亚洲手机在线 | 欧美a级成人淫片免费看 | 国产精品久久久久久av公交车 | 欧美日韩久 | 精品无码久久久久久久动漫 | 免费观看羞羞视频网站 | 在线看黄免费 | 亚洲视频在线观看一区二区三区 | 久久久久国产精品一区 | 久久亚洲春色中文字幕久久久 | 久久精品99 | 欧美日韩亚洲视频 | 日日夜夜天天干 | 日韩免费看视频 | 精品色 | 欧美精品乱码久久久久久按摩 | 一级做a爰片性色毛片16 | 欧美成人在线免费 | 亚洲一区二区三区在线免费观看 | 成年人精品视频在线观看 | 国产999精品久久久影片官网 | 九九热免费视频在线观看 | 国产在线观看一区二区三区 | 久久成人免费视频 | 日本精品视频一区二区三区四区 | 国产激情视频在线免费观看 |