導航:首頁 > 編程語言 > python文件打開方式

python文件打開方式

發布時間:2022-10-04 02:42:31

python文件操作,看這篇就足夠!

文件的存儲方式

在計算機中,文件是以二進制的方式保存在磁碟上的文本文件和二進制文件

文本文件可以使用文本編輯軟體查看本質上還是二進制文件

二進制文件保存的內容不是給人直接閱讀的,而是提供給其她軟體使用的二進制文件不能使用文件編輯軟體查看

文件基本操作

在計算機中要操作文件一共包含三個步驟:1.打開文件2.讀、寫文件

讀 將文件內容讀入內容寫 將內存內容寫入文件

模式描述

t文本模式 (默認)。

x寫模式,新建一個文件,如果該文件已存在則會報錯。

b二進制模式。

+打開一個文件進行更新(可讀可寫)。

U通用換行模式(不推薦)。

r以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認模式。

rb以二進制格式打開一個文件用於只讀。文件指針將會放在文件的開頭。這是默認模式。一般用於非文本文件如圖片等。

r+打開一個文件用於讀寫。文件指針將會放在文件的開頭。

rb+以二進制格式打開一個文件用於讀寫。文件指針將會放在文件的開頭。一般用於非文本文件如圖片等。

w打開一個文件只用於寫入。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。

wb以二進制格式打開一個文件只用於寫入。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。一般用於非文本文件如圖片等。

w+打開一個文件用於讀寫。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。

wb+以二進制格式打開一個文件用於讀寫。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。一般用於非文本文件如圖片等。

a打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。

ab以二進制格式打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。

a+打開一個文件用於讀寫。如果該文件已存在,文件指針將會放在文件的結尾。文件打開時會是追加模式。如果該文件不存在,創建新文件用於讀寫。

ab+以二進制格式打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。如果該文件不存在,創建新文件用於讀寫。

文件打開模式有很多,但是我們實際用到的就只有六種。

我們總結一下主要用到的是下面六種

模式可做操作若文件不存在是否覆蓋文件原來內容

r只讀報錯——

r+可讀、可寫報錯是

w只寫創建是

w+可讀、可寫創建是

a只寫創建否,追加寫

a+可讀、可寫創建否,追加寫

只讀模式打開文件——只讀(r)

文件若不存在報錯:

讀寫模式打開文件——讀寫模式(r+)

數據寫入之前:

數據寫入之後:

會替換掉相同長度的內容

文件若不存在報錯:

寫模式打開文件——寫模式(w)

數據寫入之前:

數據寫入之後:

這種操作會刪除原來的文件內容,重新寫入Python,

並且把游標放在文件最開始。

若文件不存在,系統會創建該文件夾並重新寫入內容

讀寫模式打開文件——讀寫模式(w+)

數據寫入之前:

數據寫入之後:

這種操作會刪除原來的文件內容,重新寫入Python,

並且把游標放在文件最開始。

若文件不存在,系統會創建該文件夾並重新寫入內容

利用這個原理所以文件寫模式(w)、讀寫模式(w+)還可以用作刪除文件內容。

因為他們整個工作原理就是把文件原來的內容刪除,然後寫入新的內容。

如果我們寫入的內容為空,那麼不就是刪除文件內容。

數據寫入之前:

數據寫入之後:

寫模式打開文件(追加內容)——寫模式(a)

數據寫入之前:

數據寫入之後:

可以看到是在原先內容的基礎上在文末追加新的內容!

若文件不存在,系統會創建新的文件夾並寫入內容

讀寫模式打開文件(追加內容)——讀寫模式(a)

數據寫入之前:

數據寫入之後:

可以看到是在原先內容的基礎上在文末追加新的內容!

若文件不存在,系統會創建新的文件夾並寫入內容

二進制模式打開文件

我們看到了在文件打開模式中有以下模式:rb、wb……有這種帶 b 的。

什麼意思呢?

就是用二進制的方式打開文件。

很明顯,我們出現了以下錯誤:

主要原因是因為編碼的問題,可能是因為0x82這個位元組在gbk編碼中沒有這個字元,

可能原字元是兩個位元組,在gbk里被解析成了一個位元組,導致字元不存在。

這就是我們文件打開方式需要使用二進制讀取的原因。

文件操作

open 函數負責打開文件,並且返迴文件對象

read /write / close 三個方法都需要通過文件對象 來調用

文件和文件夾的操作

在Python中⽂件和⽂件夾的操作要藉助os模塊⾥⾯的相關功能,

具體步驟如下:

導⼊os模塊

使⽤ os 模塊相關功能

1、文件重命名

2、刪除文件

3、創建文件夾

4、刪除文件夾

5、獲取當前目錄

6、改變默認目錄

7、獲取目錄列表

⑵ python對文件的獨操作有哪幾種請詳細說明每種方法

1.打開文件:
f=open(r'E:\PythonProjects\test7\a.txt',mode='rt',encoding='utf-8')
以上三個單引號內分別表示:要打開的文件的路徑,mode為文件打開方式具體介紹在下文,encoding為文件的字元編碼,一般默認為utf-8
2.讀寫文件:
data=f.read() # 讀文件
f.write() # 寫文件
3.關閉文件:
f.close()
4.為了簡便,一般採用上下文的方法進行文件操作,可不用關閉文件
with open('a.txt',mode='rt',encoding='utf-8') as f:
data=f.read()
print(data)
with open('a.txt',mode='wt',encoding='utf-8') as f:
f.write('hello world')
5.控制文件讀寫的操作:
r:(默認模式):只讀:以該模式打開文件時,若文件不存在則報錯,若文件存在,則文件指針在文件開頭,即從文件開頭開始讀文件
w:只寫:以該模式打開文件時,若文件不存在則創建一個文件,如文件存在,則清空文件內容,文件指針移到開頭
a:追加寫:以該模式打開文件時,若文件不存在則創建一個文件,如文件存在,則將文件指針移到文件末尾,在文件末尾寫入新的內容
6.控制文件讀寫內容的模式:(t 和 b都不能單獨使用,必須與r,w,a結合使用)
t:(默認):無論讀寫都是以字元為單位,只能識別文本文件,必須要制定encoding
b:無論讀寫都是以位元組為單位,可以識別所有文件,一定不能指定encoding
7.文件的拷貝
with open ('a.txt',mode='rb') as af,\
open('b.txt',mode='wb') as bf:
data=af.read
f.write(data)
執行程序後,打開文件,即可發現文件已成功拷貝,這里使用 b 而不是用 t 模式,是因為文件有多種格式
8.文件的修改:
文件的修改是在硬碟上實現文件的覆蓋,相當於一個新的文件以舊的文件名來命名的; 文件的修改有倆種方式,分別適用於不同的情景
方式一(適用於容量小的文件):這種方式的原理是:創建一個新的文件,將舊文件的內容拷貝到新的文件中;這樣內存里就存在倆個文件,故不適用於容量大的文件,具體代碼見下方 View
with open('a.txt',mode='rt',encoding='utf-8') as f:
data=f.read()
data_new=data.replace('yang', 'yv')
with open('b.txt',mode='wt',encoding='utf-8')as p:
p.write(data_new)
方式二(適用於容量大的文件):此方式的原理為:讀取舊文件的一行內容,修改後寫到臨時文件中,循環往復直到寫完,然後將源文件刪除,將臨時文件命名為源文件名.這種方式在內存中只存在2行文件,節省內存,可用於大文件
import os
with open('b.txt',mode='rt',encoding='utf-8') as f,\
open('.b.txt.swap',mode='wt',encoding='utf-8') as p:
for line in f:
p.write(line.replace('yv','yang'))
# 調用replace方法,將源文件中的'yv',換成'yang'
os.remove('b.txt')
os.rename('.b.txt.swap','b.txt')
9. 文件的階段:truncate(n)
將文件中n個位元組後內容全刪了,當 n 不存在時,即刪除文件全部內容
10.文件內指針的移動
f.seek(): 指針的移動是以位元組為單位的
seek 有三種模式:
0:(默認模式) 指針在文件開頭,只有在 0 模式可以在 t 模式下用,也可以在 b 模式下用,而 1 ,2 模式只能在 b 模式下使用
1:指針在當前位置
2:指針在文件末尾
以下為具體事例:
# 0
with open('a.txt',mode='rt',encoding='utf-8')as f:
f.seek(3,0)
print(f.tell()) # 指針當前位置
print(f.read()) # 從指針後讀出所有內容

# 1 參照指針當前位置
with open('a.txt',mode='rb')as f:
f.read(2)
f.seek(4,1)
print(f.tell())
print(f.read().decode('utf-8'))

# 2 參照文件末尾
with open('a.txt',mode='rb')as f:
f.seek(-5,2)
print(f.tell())
print(f.read().decode('utf-8'))
當 seek處於 2 模式時,可以將文件中新加入的內容列印出來,具體代碼如下:
# 另一個文件進行寫操作,寫的代碼如下:

with open('a.txt',mode='at',encoding='utf-8')as f:
f.write('hello world\n')

# 每在文件中寫入新的內容,都列印出來,以下代碼執行列印操作:
import time
with open('a.txt',mode='rb')as f:
f.seek(0,2)
while True:
line=f.readline() # readline 可以讀取沒有內容的部分
# print(line.decode('utf-8'))
if len(line)==0:
time.sleep(0.1)
else:
print(line.decode('utf-8'))

⑶ 如何把python程序作為打開方式

右鍵mp3文件->【打開方式】->【選擇其他應用】->勾選【設為默認】->選擇程序->選擇你的程序
註:你的python代碼里加了sys.argv了嗎?

⑷ python怎麼打開py文件

Python打不開.py文件是因為打開方式不對,正確的打開步驟為:

1、進入需要打開的py文件目錄:

注意事項:

命令行中執行python命令,需要提前將python執行程序加入系統變數,則可以在任意文件夾執行python命令。

⑸ python打開本地文件

open() 方法
Python open() 方法用於打開一個文件,並返迴文件對象,在對文件進行處理過程都需要使用到這個函數,如果該文件無法被打開,會拋出 OSError。

注意:使用 open() 方法一定要保證關閉文件對象,即調用 close() 方法。

open() 函數常用形式是接收兩個參數:文件名(file)和模式(mode)。

語法格式如下

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

參數說明:

file: 必需,文件路徑(相對或者絕對路徑)。
mode: 可選,文件打開模式
buffering: 設置緩沖
encoding: 編碼方式一般使用utf8
errors: 報錯級別
newline: 區分換行符
closefd: 傳入的file參數類型

⑹ 如何用Python打開指定的某個文件夾比如我要用Python打開D盤里的一個普通文件,該怎麼做

想要用這一類的軟體打開普通的文件,可以先把軟體打開,然後在右上方選擇文件輸入的形式,然後選取需要打開的文件即可。
不同的產品都有它不同的使用方式,我們可以採用准確的詞語對它進行詳細的解說,能夠讓更多的人掌握它。
想要准確地使用詞語,最好學會掌握以下幾個不同點:
1.詞義的輕重不同。
如:「損壞」與「破壞」,都有使物體毀壞的意思,但「損壞」一般是無意的,「破壞」則是有意的;
「誣蔑」和「誣陷」都有無中生有地硬說別人做了某種壞事的意思,但前者是捏造事實,破壞別人的名譽,而後者則是妄加罪名,誣告陷害,兩者輕重不同。
2.詞語的習慣搭配不同。
如:發揚——優點、作風、傳統;發揮——作用、干勁、創造性、積極性;改進——工作、方法、技術;改善——生活、關系、條件;交流——思想、經驗、物資;交換——意見、禮物、資料。
3.詞性和句法功能的不同。
如:阻礙(動詞)——剝削阻礙生產發展;障礙(名詞)——排除一切障礙;強大(形容詞)——強大的動力來自崇高的理想;
壯大(動詞)——人多可以壯大聲勢;精華(名詞)——這是全書的精華;精彩(形容詞)——這是全書最精彩的部分。
4.詞義側重點不同。
如:「才能」和「才華」,都含有能力、特長的意思,但「才能」著重指辦事的能力或對知識、技能、技巧的運用能力,而「才華」則著重指在文學藝術的智慧與特長;
「發現」和「發明」都有新出現的意思,但「發現」著重於新找到原本就存在的事物,而「發明」著重在新創造出本來不存在的事物。
5.適用的對象不同。
如:愛護—愛戴,前者用於上級對下級、長輩對晚輩或同級同輩之間,而後者用於下級對上級、晚輩對長輩;
撫養—奉養,前者用於長輩對晚輩,而後者用於晚輩對長輩。

⑺ python的執行方式

如何運行Python程序(即.py文件)?

第一種,使用自帶的GUI工具IDLE。右鍵.py文件,選擇IDLE打開,F5運行。

第二種,使用Windows的cmd窗口(快捷鍵win+R然後cmd回車),輸入"python.exe解釋器的路徑 *.py文件即需要被運行的程序文件路徑",如果已經將Python添加到環境變數中,可以直接輸入"python py文件路徑"回車即可。比如:C:\Users> D:\python.exe D:\documents\test.py。

第三種,使用sublime text打開py文件,找到工具-選擇system為Python,然後Ctrl+B就可以運行了,運行結果顯示在sublime界面下方的控制台中。

第四種,使用pycharm打開項目文件,右鍵run,即可運行,結果輸出列印在下方的控制台中。

第五種,如果已經將python添加至環境變數,文件默認打開方式是python.exe的話,直接雙擊文件也可以運行。

第N種,其他集成開發環境的IDE,也可以,學海無涯,大家可以一起暢游在知識的海洋,前行、探索。

⑻ 如何設置python文件默認使用spyder打開

設置python文件默認使用spyder打開的方法是:1、選中python文件,右鍵點擊選擇【打開方式】;2、勾選【始終使用此應用打開py文件】;3、找到spyder的運行路徑並選中,點擊【確定】即可。

2、勾選始終使用此應用打開.py文件選項,點擊更多應用,再點擊在這台電腦上查找其他應用,找到spyder運行路徑(如E:anacondaScriptsspyder.exe),點擊選中,最後點擊確定即可。

閱讀全文

與python文件打開方式相關的資料

熱點內容
網信辦演算法控制 瀏覽:204
番茄必看十部小說 瀏覽:670
四川的伺服器雲主機 瀏覽:706
虐到心慌的百合文 瀏覽:996
如何加密空間密碼 瀏覽:562
螺桿壓縮機性能曲線 瀏覽:392
女兒與父系戀情小說 瀏覽:310
慾望的代價法國 瀏覽:916
安卓數據線為什麼會發熱 瀏覽:29
武林盟私密紀事txt百度雲 瀏覽:207
生孩子的片 瀏覽:491
韓國19禁電影大全 瀏覽:981
cad加密圖紙怎麼解鎖 瀏覽:170
免費爽文有聲小說 瀏覽:681
穿越古代巨肉的yy小說 瀏覽:81
貓眼電影實時票房 瀏覽:576
六七十年代科研強國文 瀏覽:408
霸道王子絕對命令全集 瀏覽:309
能在線看的網站 瀏覽:207
自動編譯設置java前端 瀏覽:903