在python中,操作檔案的步驟為:開啟檔案open()->讀寫檔案read()或write()->關閉檔案close(),開啟檔案通過函式來實現。
##open()函式
open(file,mode,encoding)
開啟方式解釋r
唯讀 為輸入開啟乙個文字檔案(檔案必須存在)
w只寫 為輸出開啟乙個文字檔案(如沒有檔案,則新建)
a追加 向文字檔案尾新增資料(如沒有檔案,則新建)
rb唯讀 為輸入開啟乙個二進位制檔案
wb只寫 為輸出開啟乙個二進位制檔案
ab追加 向二進位制檔案尾新增資料
r+讀寫 為讀寫開啟乙個文字檔案(檔案必須已經存在)
w+讀寫 為讀寫建立乙個新的文字檔案
a+讀寫 為讀寫開啟乙個文字檔案(讀寫指標定位在最後)
rb+讀寫 為讀寫開啟乙個二進位制檔案
wb+讀寫 為讀寫建立乙個新的二進位制檔案
ab+讀寫 為讀寫開啟乙個二進位制檔案讀寫檔案的基本語法
#開啟檔案
file = open('路徑','開啟方式')
#讀取檔案
content = file.read()
#寫入檔案
file.write('寫入的內容')
#關閉檔案
file.close()
#示例:
#寫入file1 = open('abc.txt','w',encoding = 'utf-8')
file1.write('我愛python')
file1.close()
#讀取file2 = open('abc.txt','r',encoding = 'utf-8')
content = file2.read()
file2.close()
print(content)
with open ('路徑','開啟方式') as file:
# 讀取檔案
content = file.read()
# 寫入內容
file.write('寫入內容')
# 縮排,無需close()函式
#示例:
with open('abc.txt','w',encoding = 'utf-8') as file1:
file1.write('我愛python')
with open('abc.txt','r',encoding = 'utf-8') as file2:
content = file2.read()
print(content)
print(content)
writelines()語句』按行重寫』,可以寫入序列,返回乙個字串
readlines()語句』按行讀取』,返回乙個列表,每一行為列表中的元素
a = ('人生', '如', '夢')
b = '人生苦短'
with open('demo.txt', 'w', encoding='utf-8')as f:
f.writelines(a)
f.write('\n' + b) # 換行寫入
with open('demo.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
print(lines)
for line in lines: # 用for語句來遍歷
print(line)
#輸出結果:
#['人生如夢\n', '人生苦短']
#人生如夢
#人生苦短
常用方法列表
操作說明
os.getcwd()得到當前工作目錄,即當前python指令碼工作的目錄路徑
os.listdir()返回指定目錄下的所有檔案和目錄名
os.remove()函式用來刪除乙個檔案
os.removedirs(r"c\python")刪除多個目錄
os.path.isfile()檢驗給出的路徑是否是乙個檔案
os.path.isdir()檢驗給出的路徑是否是乙個目錄
os.path.isabs()判斷是否是絕對路徑
os.path.exists()檢驗給出的路徑是否真地存
os.path.split()返回乙個路徑的目錄名和檔名
os.path.splitext()分離副檔名
os.path.dirname()獲取路徑名
os.path.basename()獲取檔名
os.system()執行shell命令
os.getenv() 與os.putenv()讀取和設定環境變數
os.linesep 給出當前平台使用的行終止符,windows使用』rn』,linux使用』n』而mac使用』r』
os.name指示你正在使用的平台,對於windows,它是』nt』,而對於linux/unix使用者,它是』posix』
os.rename(old, new)重新命名:
os.makedirs(r"c:\python\test")建立多級目錄
os.mkdir(「test」)建立單個目錄
os.stat(file)獲取檔案屬性
os.chmod(file)修改檔案許可權與時間戳
os.exit()終止當前程序
os.path.getsize(filename)獲取檔案大小
os.mkdir(「file」)建立目錄
shutil.copyfile(「oldfile」,「newfile」)複製檔案, oldfile和newfile都只能是檔案
shutil.copy(「oldfile」,「newfile」)oldfile只能是資料夾,newfile可以是檔案,也可以是目標目錄
shutil.copytree(「olddir」,「newdir」)複製資料夾,olddir和newdir都只能是目錄,且newdir必須不存在
os.rename(「oldname」,「newname」)重新命名檔案(目錄),檔案或目錄都是使用這條命令
shutil.move(「oldpos」,「newpos」)移動檔案(目錄)
os.remove(「file」)刪除檔案
os.rmdir(「dir」)刪除目錄, 只能刪除空目錄
shutil.rmtree(「dir」)空目錄、有內容的目錄都可以刪
os.chdir(「path」)轉換目錄, 換路徑
os.mknod(「test.txt」)建立空檔案
python筆記之檔案的基本操作和os模組
語法 open 檔案路徑,訪問模式,encoding 編碼格式 檔案路徑 1.指定路徑 c path file.txt r c path file.txt windows下用 來分隔路徑 unix下用 分隔路徑 2.不指定路徑 file.txt,會在程式執行的目錄下建立 可以使用os模組改變路徑 編...
Python 檔案操作 和 目錄操作
我們知道,檔名 目錄名和鏈結名都是用乙個字串作為其識別符號的,但是給我們乙個識別符號,我們該如何確定它所指的到底是常規檔案檔名 目錄名還是鏈結名呢?這時,我們可以使用os.path模組提供的isfile函式 isdir函式和islink函式來達成我們的目標,如下所示 print myfile,是乙個...
python檔案操作和異常
python檔案的操作和異常 toc 這兩個月複習考研的同時,在github上斷斷續續的跟著駱先生 jackfrued 在我關注裡有 學習了一段時間的python,由於是自學所以經常會遇到一些容易卡死的問題,這篇文章我就簡單的分享一下在檔案及檔案異常我遇到的問題。函式語法 open file uni...