python文件操作与路径
一.打開(kāi)和關(guān)閉文件
方法1:打開(kāi)一個(gè)文件,返回一個(gè)操作的句柄
file = open(指定文件名,打開(kāi)的模式['r'或'r+'或'w'或'w+'或'a+'],編碼方式(encoding='utf-8')) # 打開(kāi)文件 file.read()或者file.write(寫(xiě)入的內(nèi)容) # 讀寫(xiě)操作 f.close()# 關(guān)閉文件方法2:開(kāi)啟open返回文件句柄對(duì)象的上下文管理器(執(zhí)行完with的代碼語(yǔ)句之后,會(huì)自動(dòng)關(guān)閉文件)
with open(file="指定文件", mode="打開(kāi)的模式", encoding="utf-8") as f:c = f.read()或f.write(寫(xiě)入的內(nèi)容)print(c)-
r:只讀 ----如果被打開(kāi)的文件不存在,直接報(bào)錯(cuò)【rb:二進(jìn)制允許讀入文件】
read()讀取全部,進(jìn)行完一次讀取操作后,光標(biāo)到文末 readline()讀取單行 readlines()讀取多行
默認(rèn)只讀r模式,若寫(xiě)入內(nèi)容,會(huì)報(bào)錯(cuò):io.UnsupportedOperation: not writable -
r+:可讀可寫(xiě)
先寫(xiě),從頭開(kāi)始覆蓋寫(xiě) ;讀光標(biāo)之后的內(nèi)容 ;讀寫(xiě)跟著光標(biāo)走
寫(xiě)入中文,注意編碼格式encoding=utf-8 -
w:只寫(xiě) —(清空文件中原有的內(nèi)容),被打開(kāi)的文件不存在,會(huì)自動(dòng)創(chuàng)建一個(gè)【wb:覆蓋寫(xiě)入二進(jìn)制文件】
write()直接寫(xiě) writeline()寫(xiě)單行 writelines()寫(xiě)多行 wb:二進(jìn)制允許寫(xiě)入文件
w:讀會(huì)報(bào)錯(cuò):io.UnsupportedOperation: not readable -
w+:可讀可寫(xiě)
注意1: 不管是w,還是w+,如果文件存在,直接清空,再重寫(xiě);如果文件不存在,則新建一個(gè)文件,然后寫(xiě) -
a+:追加(不清空),可讀可寫(xiě) 【ab:二進(jìn)制允許追加文件】如果文件存在,寫(xiě)到后面;如果文件不存在,則新建一個(gè)文件,然后寫(xiě)
注意2:二進(jìn)制模式一般用于讀圖片,視頻等,寫(xiě)測(cè)試報(bào)告:wb模式
二.路徑
1.新建文件
- 新建目錄/文件夾 : os.mkdir(‘文件名’)
- 跨級(jí)新建目錄 :【 相對(duì)路徑 】 os.mkdir(‘kite/v1’) 【 絕對(duì)路徑 】os.mkdir(“D://Test3/base_python/Kite/v2”)
2.刪除文件
- 一級(jí)一級(jí)的刪除 : os.rmdir(“kite/v1”)
- 不推薦一次性刪除 : os.rmdir(“kite”) 報(bào)錯(cuò):OSError:[WinErrorr 145]目錄不是空的
3.獲取路徑
- 獲取當(dāng)前工作目錄 : path = os.getcwd() 【 具體到最后一級(jí)目錄 】
- 獲取當(dāng)前文件的絕對(duì)路徑 : path = os.path.realpath(file) 【 具體到模塊名 】
- 獲取文件/目錄所在的路徑 的父級(jí)目錄: os.path.dirname(filename)
切換工作路徑: os.chdir()
4.拼接路徑
- +或 join : os.path.join(os.getcwd(),路徑2)
5.判斷文件
- 判斷是否為目錄 : os.path.isdir(com_path)
- 判斷是否為文件 : os.path.isfile(com_path)
- 判斷文件是否存在 : os.path.exists(文件名)
6.羅列文件路徑 : os.listdir(path)
7.當(dāng)前文件的絕對(duì)路徑:__file__
8.__name__: 如果當(dāng)前文件做程序的啟動(dòng)文件中,它的值是 _main_;如果不在啟動(dòng)文件中,代表的就是所在的文件(模塊)的模塊名
總結(jié)
以上是生活随笔為你收集整理的python文件操作与路径的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python基础教程:3种控制流语句(i
- 下一篇: python文件操作:新建删除文件,获取