1. 程式人生 > 實用技巧 >檔案基礎操作及os模組

檔案基礎操作及os模組

1. o s 模組
import os
os.listdir(path):返回該路徑下的所有檔案和資料夾,第一層。
a = os.listdir("C:/Users/Administrator/Desktop/os模組測試資料夾")
os.path.isfile(path):判斷給定的路徑不是一個檔案,如果是則返回True,如果不是則返回False
b = os.path.isfile("C:/Users/Administrator/Desktop/os模組測試資料夾/新建資料夾1/1.1/1.1.1")
os.path.isdir(path):判斷給定的路徑是不是資料夾。
# c = os.path.isdir("C:/Users/Administrator/Desktop/os模組測試資料夾/")
os.path.exists(path):判斷檔案或者目錄是否存在,存在則返回True,否則返回False
# d = os.path.isdir("C:/Users/Administrator/Desktop/os模組測試資料夾/")
os.mkdir(path):建立資料夾,但是資料夾的名字不能有特殊符號(*,?,\)
# try:
# os.mkdir("C:/Users/Administrator/Desktop/os模組測試資料夾/number")
# except:
# print("資料夾建立失敗")
# os.makedirs(dirname):可以生成多層遞迴目錄,如果目錄全部存在,則建立目錄失敗。
# os.makedirs("name1")
os.path.rmdir(path):刪除給定資料夾。
# os.rmdir("C:/Users/Administrator/Desktop/os模組測試資料夾/number")
os.remove(path):刪除檔案的
# os.remove("C:/Users/Administrator/Desktop/os模組測試資料夾/新建文字文件3.txt")
os.removedirs(dirname) 可以刪除多層遞迴的空目錄,若目錄中有檔案則無法刪除。
os.path.join(path,name):路徑的拼接
# e = os.path.join("C:/Users/Administrator/Desktop/os模組測試資料夾", "11111")
# print(e)
os.path.dirname:返回檔案的目錄,如果給定的是目錄,則直接返回。(也就是返回當前檔案的資料夾)
# f = os.path.dirname("C:/Users/Administrator/Desktop/os模組測試資料夾")
os.chdir():改變當前目錄到指定目錄。
# os.chdir("C:/Users/Administrator/Desktop")
os.rename():重新命名目錄名或者檔名。重新命名後的檔名已存在,則重新命名失敗。
# os.rename("C:/Users/Administrator/Desktop/os模組測試資料夾/新建資料夾1", "巴拉巴拉")



2.python檔案操作
1. 只讀(r, rb)
# j = open("新建文字文件2.txt", "r", encoding="utf-8")
# content = j.read()
# print(content)
# j.close()
2. 只寫(w, wb)
# h = open("新建文字文件2.txt", "w", encoding="utf-8")
# h.write("hello word ,hello python")
# h.flush()
# h.close()
3. 追加(a, ab)
# i = open("新建文字文件2.txt", mode="a", encoding="utf-8")
# i.write("\n hello"*5)
# i.flush()
# i.close()
4. r+讀寫
# j = open("新建文字文件2.txt", mode="r+", encoding="utf-8")
# content = j.read()
# j.write("\n python"*5)
# j.flush()
# print(content)
# j.close()
5. w+寫讀
# k = open("新建文字文件2.txt", mode="w+", encoding="utf-8")
# k.write("哈哈")
# content = k.read()
# print(content)
# k.flush()
# k.close()
6. a+寫讀(追加寫讀)
# l = open("新建文字文件2.txt", mode="a+", encoding="utf-8")
# l.write("\n hello python")
# content = l.read()
# print(content)
# l.flush()
# l.close()
7. 其他操作方法
# seek(n) 游標移動到n位置, 注意, 移動的單位是byte. 所以如果是UTF-8的中文部分要
# 是3的倍數.
# 移動到開頭: seek(0)
# 移動到結尾: seek(0,2) seek的第二個引數表示的是從哪個位置進行偏移, 預設是0, 表
# 示開頭, 1表示當前位置, 2表示結尾

# tell() 使用tell()可以幫我們獲取到當前游標在什麼位置


# tell() 使用tell()可以幫我們獲取到當前游標在什麼位置