這篇文章主要介紹Python3編碼怎樣實現(xiàn)文件操作,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
超過10余年行業(yè)經(jīng)驗,技術(shù)領(lǐng)先,服務(wù)至上的經(jīng)營模式,全靠網(wǎng)絡(luò)和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務(wù)范圍包括了:網(wǎng)站制作、成都網(wǎng)站建設(shè),成都網(wǎng)站推廣,成都網(wǎng)站優(yōu)化,整體網(wǎng)絡(luò)托管,微信小程序,微信開發(fā),app軟件開發(fā),同時也可以讓客戶的網(wǎng)站和網(wǎng)絡(luò)營銷和我們一樣獲得訂單和生意!
想要通過 Python 代碼操作某個文件,必須要有三個元素:
path:文件的路徑
mode:r / w / r+ / w+ / a
encoding:編碼方式
2. 文件句柄包括:f / file / file_handler, f_h...
3. open() 是內(nèi)置函數(shù),實際上是調(diào)用操作系統(tǒng)對文件操作的功能
4. 各系統(tǒng)的默認(rèn)編碼方式:
Windows:GBK
Linux:UTF-8
IOS:UTF-8
5. 對文件的任何操作都需要借助文件句柄
6. f.close():打開某個文件后一定要記得關(guān)閉它,否則會一直在內(nèi)存中占用資源
7.打開某個文件并讀取其中內(nèi)容的方法:
f = open("G:\test.txt", mode="r", encoding="utf-8") content = f.read() print(content) f.close() # 運(yùn)行報錯,原因解析: # 路徑錯誤,系統(tǒng)會認(rèn)為 \t 是一個轉(zhuǎn)義字符 # 解決辦法: # 1) "G:\\test.txt" # 2) r"G:\test.txt" # 另外,這里不能把反斜杠 \ 改為斜杠 /,因為不同系統(tǒng)之間的斜杠與反斜杠之間會有不同的定義 # 使用 open() 打開某個文件報錯,除了上面提到的路徑問題 # 還有一個可能的原因,即編碼問題 # 比如在 Windows 系統(tǒng)上編寫了一個 .txt 文件并保存 # 在 Pycharm 里面打開該文件就會發(fā)現(xiàn)內(nèi)容很有可能是亂碼的 # 原因就是兩者的編碼方式是不一樣的
8. 文件操作涉及到路徑問題,路徑分為兩種:
絕對路徑:從磁盤根目錄開始,直到找到文件
相對路徑:從當(dāng)前路徑 (當(dāng)前文件夾) 找到文件
9. r 模型下的五種讀取方式
# 假設(shè) test.txt 文件與本 Python 文件在同一個目錄下 # test.txt 文件里的內(nèi)容如下: 這是第一行的內(nèi)容... 這是第二行的內(nèi)容... 這是第三行的內(nèi)容... 這是第四行的內(nèi)容... 這是第五行的內(nèi)容... ######## 1. read():全部讀取出來 ######## f = open("test.txt", mode="r", encoding="utf-8") content = f.read() print(content) f.close() # 運(yùn)行結(jié)果: 這是第一行的內(nèi)容... 這是第二行的內(nèi)容... 這是第三行的內(nèi)容... 這是第四行的內(nèi)容... 這是第五行的內(nèi)容... ######## 2. read(n):讀取 n 個字符 ######## f = open("test.txt", mode="r", encoding="utf-8") content = f.read(3) print(content) f.close() # 運(yùn)行結(jié)果: 這是第 ######## 3. readline():按行讀取 ######## f = open("test.txt", mode="r", encoding="utf-8") line1_content = f.readline() print(line1_content, type(line1_content)) # 這是第一行的內(nèi)容... #line2_content = f.readline() print(line2_content, type(line2_content)) # 這是第二行的內(nèi)容... # f.close() ######## 4. readlines():返回一個列表 ######## f = open("test.txt", mode="r", encoding="utf-8") content = f.readlines() print(content) f.close() # 運(yùn)行結(jié)果: ['這是第一行的內(nèi)容...\n', '這是第二行的內(nèi)容...\n', '這是第三行的內(nèi)容...\n', '這是第四行的內(nèi)容...\n', '這是第五行的內(nèi)容...\n'] ######## 5. for 循環(huán):讀取大文件 ######## # 當(dāng)一個文件很大時,比如它有 9G,但是電腦內(nèi)存只有 8G # 如果使用上面的方法一次性全部讀取出來,那么電腦就會掛掉 # 解決辦法就是使用 for 循環(huán),只有每次循環(huán)時才占內(nèi)存 f = open("test.txt", mode="r", encoding="utf-8") for line in f: print(line.strip()) f.close() # 運(yùn)行結(jié)果: 這是第一行的內(nèi)容... 這是第二行的內(nèi)容... 這是第三行的內(nèi)容... 這是第四行的內(nèi)容... 這是第五行的內(nèi)容... # 如果是直接 print(line),注意看結(jié)果: 這是第一行的內(nèi)容... 這是第二行的內(nèi)容... 這是第三行的內(nèi)容... 這是第四行的內(nèi)容... 這是第五行的內(nèi)容...
以上是Python3編碼怎樣實現(xiàn)文件操作的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!