open,os模組的常用函式
一.open用於讀寫檔案
1.open的基本語法 : open(file,mode,buffering,encoding,errors.........),open中有如下幾個引數,一般情況
下我們只需要file,mode,encoding即可。
- file: 必需,檔案路徑(相對或者絕對路徑)
- mode: 可選,檔案開啟模式
- buffering: 設定緩衝
- encoding: 一般使用utf8
- errors: 報錯級別
- newline: 區分換行符
- closefd: 傳入的file引數型別
- opener: 設定自定義開啟器,開啟器的返回值必須是一個開啟的檔案描述符。
(1)file:要讀寫的檔案
(2)mode:對檔案使用的許可權
r:可讀許可權
r+:可讀寫許可權,寫入的內容放在末尾
w:可寫許可權,寫入的內容替換原有的內容
w+:可讀寫許可權,寫入的內容替換原有的內容
a:追加的內容放在末尾
a+:可讀寫。寫的內容放在末尾
(3)encoding:編碼,填寫utf8即可
2.open中的函式
name:獲取檔名,即open中的值
write():寫入內容
writelines():寫入內容可以是list/set/字典/元組型別
read():讀取檔案內容
teel():檢視當前指標指向的位置
seek(offset whence):設定指標位置,offset偏移位置,whence表示從哪個位置開始(0開頭位置,1當前位置,2結尾位置)
close():關閉
3.運用例項,對於以下寫法,有些python版本可能會報錯('encoding' is an invalid keyword argument for this function)
這個時候可以有兩種解決辦法(1.刪除encoding=“utf8” 2.引入io庫,在open前加上io.即可)
當我們使用write()寫入的時候,可能還會報錯(write() argument 1 must be unicode, not str/int),這是因為你輸入的內容
是字串或者int型別,不是bytes,大概原因是python預設編碼導致的,一個萬能的解決辦法,在輸入內容前加個u即可(
a.write(u"飯然超上到")
二.os模組基本函式(使用時需先用import匯入os模組)
os.system():可寫入命令
os.mkdir(path):建立目錄
os.rmdir(path):刪除目錄
os.remove(path):移除目錄
os.path.abspath(__file__):獲取當前py檔案絕對路徑(__file__為ypthon全域性變數,表示當前檔案)
os.getcwd():獲取當前檔案所在目錄
os.chdir(path):修改當前檔案路徑
os.path.dirname(__file__):獲取當前py檔案所在的目錄
os.path.join(path,"path"):在當前目錄下追加目錄
os.name:獲取當前是什麼系統,win打印出來的是nt,linux是posix
三.其它函式
a.replace("old","new")
a[2],a[1:5],a[:5]:擷取字串,下標從0開始