從本次隨筆開始,陸續總結下自己在學習Python中各個模塊的一些總結。最近一直在學習《Python核心編程》,發現如果只是翻書的話,翻一遍就忘記,所有,現在爭取在一個月內,把Python常用的一些基礎知識做一個梳理和總結。
本次總結文件和輸入輸出的一些操作,參考書目《Python 核心編程 第二版》。
一,文件的操作
文件的入口是由內建函數 open()和file()來提供初始化的操作。這兩個內建函數操作基本上一樣,可以互用,而且大部分習慣來說,還是用open()比較多一些。
open()基本語法:
file_obj = open(filename,access_mode='r',buffering=-1)
access_mode有'r','w','a','U'幾種,很容易分辨,分別代表了讀,寫,追加和通用換行符支持。注意,使用'r','U'的時候,必須確保文件是存在的。'w'模式的話,如果文件中存有數據,會被情況,所以如果繼續追加數據要用'a'模式。
文件輸入內建方法:
read():直接讀取字節到字符串中,如果沒有給定size參數,則讀取所有。
readline():讀取打開文件的一行,以字符串形式返回。
readlines():讀取所有行,並返回一個字符串列表。
文件輸出內建方法:
write():把含有文本數據或者二進制數據寫入文件。
writelines():針對列表的操作。行結束符不會自動添加。
文件內移動
seek()方法可以在文件內移動指針的位置到不同的地方。
文件的關閉
close():良好的編程習慣,就是操作完之後,調用關閉方法。
文件迭代-----訪問文件最佳方式:
for eachLine in f: :
其他的一些文件對象方法:
flush():刷新內部緩沖區
next():返回下一行
tell():返回當前位置
二,文件系統的操作
主要是使用到兩個模塊,os 和os.path ,而且與操作系統無關。
os模塊主要函數:
mkfifo()/mknod():創建命名管道或者節點
remove()/unlink():刪除文件
rename()/renames():重命名
stat():返回文件信息
walk():生成一個目錄樹下所有的文件名
chdir()/fchdir():改變當前工作目錄
chroot():改變當前進程根目錄
listdir():列出指定目錄的文件
getcwd():返回當前工作目錄
mkdir()/makedirs():創建目錄/多層目錄
rmdir()/removedirs():刪除目錄/多層目錄
chmod():改變權限模式
chown():改變owner,group
os.path主要函數:
basename():去掉路徑,返回文件名
dirname():返回目錄路徑
jion():將分離的部分組成新的路徑
spilt():返回 路徑名,文件名 元組
getatime()/getctime()/getmtime():返回訪問/創建/修改時間
getsize():返回文件大小
exists():指定路徑是否存在
isabs():指定路徑是否是絕對路徑
isdir():指定路徑是否存在一個目錄
isfile():指定路徑是否存在且為一個文件