python language 檔案與檔案系統

2021-10-08 23:01:46 字數 2574 閱讀 4367

1.檔案與檔案系統

開啟檔案

open(file, mode=『r』, buffering=none, encoding=none, errors=none, newline=none, closefd=true) open file and return a stream. raise oserror upon failure.

file: 必需,檔案路徑(相對或者絕對路徑)。

mode: 可選,檔案開啟模式

buffering: 設定緩衝

encoding: 一般使用utf8

errors: 報錯級別

newline: 區分換行符

檔案物件方法

fileobject.close() 用於關閉乙個已開啟的檔案。且關閉後的檔案不能再進行讀寫操作。

fileobject.read([size]) 用於從檔案讀取指定的字元數,如果未給定或為負則讀取所有。

fileobject.readline()讀取整行,包括 「\n」 字元。

fileobject.readlines()用於讀取所有行(直到結束符 eof)並返回列表。

fileobject.tell()返回檔案的當前位置,即檔案指標當前位置。

fileobject.seek(offset[, whence])用於移動檔案讀取指標到指定位置。

fileobject.writelines(sequence)向檔案寫入乙個序列字串列表,如果需要換行則要自己加入每行的換行符\n。

2.os 模組中關於檔案/目錄常用的函式

有os模組,os模組會幫忙選擇正確的函式並呼叫

os.getcwd()用於返回當前工作目錄。

os.chdir(path)用於改變當前工作目錄到指定的路徑。

listdir (path=』.』)返回path指定的資料夾包含的檔案或資料夾的名字的列表。

os.mkdir(path)建立單層目錄,如果該目錄已存在丟擲異常。

os.makedirs(path)用於遞迴建立多層目錄,如果該目錄已存在丟擲異常。

os.remove(path)用於刪除指定路徑的檔案。如果指定的路徑是乙個目錄,將丟擲 oserror。

os.rmdir(path)用於刪除單層目錄。僅當這資料夾是空的才可以, 否則, 丟擲 oserror。

os.removedirs(path)遞迴刪除目錄,從子目錄到父目錄逐層嘗試刪除,遇到目錄非空則丟擲異常。

os.rename(src, dst)方法用於命名檔案或目錄,從 src 到 dst,如果 dst 是乙個存在的目錄, 將丟擲 oserror。

os.system(command)執行系統的shell命令(將字串轉化成命令)

os.curdir指代當前目錄(.)

os.pardir指代上一級目錄(…)

os.sep輸出作業系統特定的路徑分隔符(win下為\,linux下為/)

os.linesep當前平台使用的行終止符(win下為\r\n,linux下為\n)

os.name指代當前使用的作業系統(包括:『mac』,『nt』)

os.path.basename(path)去掉目錄路徑,單獨返回檔名

os.path.dirname(path)去掉檔名,單獨返回目錄路徑

os.path.join(path1[, path2[, …]])將 path1,path2 各部分組合成乙個路徑名

os.path.split(path)分割檔名與路徑,返回(f_path,f_name)元組。如果完全使用目錄,它會將最後乙個目錄作為檔名分離,且不會判斷檔案或者目錄是否存在。

os.path.splitext(path)分離檔名與副檔名,返回(f_path,f_name)元組。

os.path.getsize(file)返回指定檔案大小,單位是位元組。

os.path.getatime(file)返回指定檔案最近的訪問時間

os.path.getctime(file)返回指定檔案的建立時間

os.path.getmtime(file)返回指定檔案的最新的修改時間

浮點型秒數,可用time模組的gmtime()或localtime()函式換算

os.path.exists(path)判斷指定路徑(目錄或檔案)是否存在

os.path.isabs(path)判斷指定路徑是否為絕對路徑

os.path.isdir(path)判斷指定路徑是否存在且是乙個目錄

os.path.isfile(path)判斷指定路徑是否存在且是乙個檔案

os.path.islink(path)判斷指定路徑是否存在且是乙個符號鏈結

os.path.ismount(path)判斷指定路徑是否存在且是乙個懸掛點

os.path.samefile(path1,path2)判斷path1和path2兩個路徑是否指向同乙個檔案

序列化與反序列化

pickle模組中最常用的函式為:

pickle.dump(obj, file, [,protocol]) 將obj物件序列化存入已經開啟的file中。

NSSpeechSynthesizer 文字變語音

nsspeechsynthesizer 是 foundation中的乙個類,這個類可以方便的在cocoa應用程式中新增 文字到語言 功能。開發者可以使用這個類向ios 引用程式中新增類似功能。效果圖如下 截圖 speechutterance引數說明 utterance.voice 語系 不區分大小寫...

FileSystemWatcher判斷檔案複製完成

使用 filesystemwatcher 監視指定目錄中的更改。可監視指定目錄中的檔案或子目錄的更改。該元件可以監視本地計算機 網路驅動器或遠端計算機上的檔案。可監視目錄或檔案中的若干種更改。例如,可監視檔案或目錄的 attributes lastwrite 日期和時間或 size 方面的更改。通過...

Vmware Window Linux 共享資料夾

問題描述 在虛擬機器vmware 8.0下,其中宿主機系統為window 7,安裝的虛擬機器系統為ubuntu 12.04 x64,通過使用共享資料夾的方式,實現兩個系統的通訊。預備工作 虛擬機器需要安裝vmware tools。解決方案 1.在虛擬機器的詳細設定下,選擇啟用共享資料夾。右擊虛擬機器...