python打開文件的路徑
『壹』 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打開指定的某個文件夾比如我要用Python打開D盤里的一個普通文件,該怎麼做
操作系統一般不允許程序直接操作磁碟文件的,文件在磁碟上的讀寫都是由操作系統提供的,文件操作包括創建、刪除、修改許可權、讀取、寫入等。要想實現對文件的操作就需要請求操作系統打開一個文件對象,然後通過操作系統提供的介面來實現對文件讀寫的相關操作。讀寫文件是最常見的 I/O 操作,Python內置相關API可以幫助我們快速的實現文件讀寫操作。
文件對象
Python內置的 open() 函數可以用於打開指定文件 ,該函數會返回一個文件對象(該對象包含了當前文件擁有的屬性信息,相當於文件句柄)。參數file為要創建或打開文件的文件名稱,參數mode用於指定文件的打開模式(可選),參數buffering用於指定對文件做讀寫操作時是否使用緩沖區。在打開文件之後就可調用文件對象的屬性和方法,完成對文件的讀/寫操作之後最後需要關閉該文件,通過文件對象的close() 函數來實現即可。
打開模式
文件打開是可以指定其打開的模式,該參數通過mode來指定【默認模式為只讀(r)】。選擇不同的打開模式決定了後續可以對文件進行操作,如果使用 r 模式打開的文件則只能讀取文件而無法修改文件內容。open()提供了多種打開模式,下面列出了對應的打開模式和說明:
『叄』 python如何打開文件
在Python普通字元串中,「\」是轉義字元,你應當嘗試使用如下代碼:
f=open('C:\\Users\\lenovo\\Desktop\\eadme.txt','r')
或
f=open(r'C:\Users\lenovo\Desktop\eadme.txt','r')
『肆』 python的運行文件在哪個文件夾
python的運行文件所在位置:
找到python的安裝目錄,在安裝目錄下面,有一個python.exe文件,這個就是python的運行文件
右鍵單擊,選擇發送到桌面快捷方式,這個快捷方式就是python的桌面圖標了
示例如下:
更多Python知識,請關註:Python自學網!!
『伍』 python怎麼打開py文件
Python打不開.py文件是因為打開方式不對,正確的打開步驟為:
1、進入需要打開的py文件目錄:
注意事項:
命令行中執行python命令,需要提前將python執行程序加入系統變數,則可以在任意文件夾執行python命令。
『陸』 python打開文件路徑是對的怎麼打不開
解決python打開文件路徑是對的打不開的方法:
python文件操作有三種基本方式,『r』以只讀模式打開,『w』以寫模式打開,『a』以追加模式打開,如果以只讀模式打開文件並寫入數據的話,程序會報錯,以寫模式打開並寫入數據,程序可以正常執行
示例如下:
以只讀模式打開文件,寫入數據:
執行結果:
以寫模式打開文件,寫入數據:
執行結果:
更多Python知識,請關註:Python自學網!!
『柒』 python打開文件的路徑
可以使用絕對路徑,類似於D:workdeter.xls
Python中打開文件的路徑是當前工作路徑,可以通過下面的方式查看
importos
os.getcwd()
可以通過 os.chdir('c:\') 進行修改
『捌』 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怎麼用代碼打開某路徑的下的文件,例如打開桌面的「123.txt」文件還有怎麼雙擊打開桌面某個app
# 打開桌面上的test.txt文件
file=open(r"C:\Users\admin\Desktop\test.txt","r").read()
print(file)
# 打開QQ
import os
file=os.system(r'"D:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"')
print(file)
注意路徑要是你電腦上的路徑
『拾』 python讀取已經打開的3個word和excle文件的路徑
使用os.path.abspath()函數來獲取文件絕對路徑
文件目錄結構如下: