Python 如何讀寫文字檔案

2022-03-22 01:57:29 字數 1630 閱讀 6224

關於檔案操作,參考:python:檔案操作

一、檔案儲存與讀取的步驟:

1)思路:

str.encode('編碼格式'):對unicode字串進行編碼,編碼成連續位元組的格式,才能存放到檔案中,即物理介質上

str.decode('解碼格式'):對物理介質上的連續位元組資料進行解碼,解碼常unicode格式的資料,才能在python的ide上顯示;

#編碼格式:utf-8、gbk、big5;

#python內部用unicode編碼,來表示乙個字元;顯示格式也是unicode;

==>unicode編碼才是真正意義上的字串;

2)開啟檔案、將資料儲存到檔案中、關閉檔案、開啟並讀取檔案內容

a、開啟檔案:open()函式

完整格式:open(file, mode = 'r', buffering = -1, encoding = none, errors = none, newline = none, closefd = true, opener = none)

#mode:開啟的方式;

二、例項

例項1:unicode格式和str格式的轉換:

s = u'你好'

#encode(編碼格式),指定編碼格式,對unicode字串進行編碼,

r = s.encode('

utf-8')

print

(r)#

輸出:b'\xe4\xbd\xa0\xe5\xa5\xbd'

#b'\xe4\xbd\xa0\xe5\xa5\xbd':共用了6個位元組(xe4為乙個位元組)來編碼字串 '你好';

#得到乙個string的字串,即連續位元組的字串;

#只有string的字串,才能存到物理介質中,

#decode('解碼格式'),對編碼的string格式的字串進行解碼;

print(r.decode('

utf-8'))

#輸出:你好

#encode選擇的編碼格式,要和decode選擇的解碼格式統一(都用utf-8),不然得不到最初的資料;

例項二:資料存放檔案內、從檔案內讀取資料

三、其它:

1)unicode格式的資料,不能夠直接儲存到文字檔案中,必須以一種編碼格式(如utf-8),將資料編譯成連續位元組的格式(如str),才能存放到檔案中;

注:解碼的格式,要於檔案編碼時的格式統一,不然得不到最初資料;

3)從python2到python3,字串的語義變化:

python2 ——>python3

----------------------str ->bytes

unicode -> str

4)str,表面上表示的是字串,實際上抽象的是乙個連續的位元組;

==>因為,早起美國人發明字元編碼(ascii碼)時,乙個位元組表示乙個字元,只針對乙個字元(不是字串)進行編碼的,若想要多個連續的字串,則給出乙個連續的位元組;

==>後來,由於各國語言的字元種類較多,乙個位元組表示乙個字元,無法滿足需(表示不完),則各種編碼格式被發明,其中unicode是比較通用的一種;

Python如何讀寫文字檔案?

1.讀取文字檔案 f open test.txt r print f.read f.seek 0 print f.read 14 f.seek 0 print f.readline print f.readline f.seek 0 print f.readlines f.seek 0 for li...

python 讀寫文字檔案

本人最近新學python 用到文字檔案的讀取,經過一番研究,從網上查詢資料,經過測試,總結了一下讀取文字檔案的方法.a f open filename r content f.read decode utf 8 b f codecs.open encoding utf 8 content f.rea...

Python 讀寫文字檔案

def readfile filename,mode r 讀取檔案內容 filename 檔名 return string bin 若檔案不存在,則返回空字串 import os if not os.path.exists filename return fp open filename,mode,...