python中文本文件的編碼格式


  • 文本文件存儲的內容是基於 字符編碼 的文件,常見的編碼有 ASCII 編碼,UNICODE 編碼等

Python 2.x 默認使用 ASCII 編碼格式
Python 3.x 默認使用 UTF-8 編碼格式

 ASCII 編碼和 UNICODE 編碼

ASCII 編碼

  • 計算機中只有 256ASCII 字符
  • 一個 ASCII 在內存中占用 1 個字節 的空間
    • 80/1 的排列組合方式一共有 256 種,也就是 2 ** 8

UTF-8 編碼格式

  • 計算機中使用 1~6 個字節 來表示一個 UTF-8 字符,涵蓋了 地球上幾乎所有地區的文字
  • 大多數漢字會使用 3 個字節 表示
  • UTF-8UNICODE 編碼的一種編碼格式

 Ptyhon 2.x 中如何使用中文

Python 2.x 默認使用 ASCII 編碼格式
Python 3.x 默認使用 UTF-8 編碼格式

  • 在 Python 2.x 文件的 第一行 增加以下代碼,解釋器會以 utf-8 編碼來處理 python 文件
# *-* coding:utf8 *-* 

這方式是官方推薦使用的!

  • 也可以使用
# coding=utf8 

unicode 字符串

  • Python 2.x 中,即使指定了文件使用 UTF-8 的編碼格式,但是在遍歷字符串時,仍然會 以字節為單位遍歷 字符串
  • 要能夠 正確的遍歷字符串,在定義字符串時,需要 在字符串的引號前,增加一個小寫字母 u,告訴解釋器這是一個 unicode 字符串(使用 UTF-8 編碼格式的字符串)
# *-* coding:utf8 *-* # 在字符串前,增加一個 `u` 表示這個字符串是一個 utf8 字符串 hello_str = u"你好世界" print(hello_str) for c in hello_str: print(c) 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM