您好,登錄后才能下訂單哦!
#文件、文件夾的移動、復制、刪除、重命名
#導入shutil模塊和os模塊
import shutil,os
#復制單個文件
shutil.copy("C:\\a\\1.txt","C:\\b")
#復制并重命名新文件
shutil.copy("C:\\a\\2.txt","C:\\b\\121.txt")
#復制整個目錄(備份)
shutil.copytree("C:\\a","C:\\b\\new_a")
#刪除文件
os.unlink("C:\\b\\1.txt")
os.unlink("C:\\b\\121.txt")
#刪除空文件夾
try:
os.rmdir("C:\\b\\new_a")
except Exception as ex:
print("錯誤信息:"+str(ex))#提示:錯誤信息,目錄不是空的
#刪除文件夾及內容
shutil.rmtree("C:\\b\\new_a")
#移動文件
shutil.move("C:\\a\\1.txt","C:\\b")
#移動文件夾
shutil.move("C:\\a\\c","C:\\b")
#重命名文件
shutil.move("C:\\a\\2.txt","C:\\a\\new2.txt")
#重命名文件夾
shutil.move("C:\\a\\d","C:\\a\\new_d")
os.getcwd() —— 獲取當前活動目錄,當前路徑
os.chdir(path) —— 活動目錄切換到path
os.getcwd() # 獲取當前活動目錄
'C:\Software\Python35'
os.chdir('C://') # 活動目錄切換到C:/
os.getcwd() # 獲取當前活動目錄
'C:\'
os.chdir('C:\Software\Python35') # 切換回活動目錄
os.getcwd() —— 查看當前所在路徑。
os.listdir(path) —— 列舉目錄下的所有文件與目錄。返回list列表。
os.walk(path) —— 列舉目錄下的所有文件與目錄(包含子文件夾)。返回可迭代對象。
import os
os.getcwd() # 獲取當前目錄路徑
'C:\Software\Python35'
os.listdir('.') # 返回當前目錄下目錄與文件
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', ....]
os.listdir(r'C:\Users\Public\SogouInput\USBDT') # 返回路徑下目錄與文件
['OctopusDownloader.exe', 'SgRose.dll']
for root,dirs,files in os.walk('.'):
print(root) # 當前目錄路徑str
print(dirs) # 當前路徑下的所有子目錄list
print(files) # 當前路徑下的所有非目錄的文件
os.mkdir(path) —— 創建目錄(只能創建一層)
os.makedirs(path) —— 遞歸創建目錄
os.rename(src ,dst) —— 重命名文件或目錄,從 src 到 dst
os.renames(src ,dst) —— 遞歸地對目錄進行更名,也可以對文件進行更名。
os.rmdir(path) —— 刪除path指定的空目錄,如果目錄非空,則拋出一個OSError異常
os.removedirs(path) 遞歸刪除目錄
os.chdir('C://') # 活動目錄切換到C:/盤下
os.getcwd() # 獲取當前活動目錄
'C:\'
os.mkdir('test') # 在當前活動目錄創建test目錄
os.path.exists('test') # 確認test目錄創建成功
True
os.rename('test','test001') # test重命名為test001
'test' in os.listdir('.') # 確認文件或目錄是否存在
False
'test001' in os.listdir('.')
True
os.rmdir('test001') # 刪除test001目錄
'test001' in os.listdir('.')
False
os.remove(path) —— 刪除指定文件
os.rename(src ,dst) —— 重命名文件或目錄,從 src 到 dst
文件新增在打開寫入模式時創建os.open("文件名", os.O_CREAT)或open("文件名",’w’)
fo=os.open("test.txt", os.O_CREAT) # 創建并打開文件
'test.txt' in os.listdir('.') # 判斷文件是否存在
True
os.close(fo) # 關閉打開文件
os.rename('test.txt','test001.txt') # 重命名文件
'test.txt' in os.listdir('.')
False
'test001.txt' in os.listdir('.')
True
os.remove('test001.txt') # 刪除文件
'test001.txt' in os.listdir('.')
False
os.path.abspath(path) —— 返回path的絕對路徑
os.path.isabs(path) —— 是否是絕對路徑
os.path.abspath('.') # . 表示當前目錄
'C:\Software\Python35'
os.path.abspath('..') # .. 表示上級目錄
'C:\Software'
os.path.isabs('C:\Software\Python35') # 路徑是否為絕對路徑
True
os.path.isabs('..') # 路徑是否為相對路徑
False
os.path.basename(path) —— 去掉目錄路徑獲取文件名
os.path.dirname(path) —— 去掉文件名獲取目錄
path='C:\Software\Python35\python.exe'
os.path.basename(path)
'python.exe'
os.path.dirname(path)
'C:\Software\Python35'
os.path.isdir(path) —— 是否是目錄
os.path.isfile(path) —— 是否是文件
當文件或者目錄不存在是返回False
os.path.isfile('C:\Software\Python35\python.exe') # 是否為文件
True
os.path.isfile('C:\Software\Python35')
False
os.path.isfile('.\python.exe') # 可以使用相對路徑
True
os.path.isdir('C:\Software\Python35')
True
os.path.isdir('python.exe')
False
os.path.isdir('.')
True
os.path.exists(path) —— 文件或目錄是否存在,返回True 或 False
os.path.exists('lib')
True
os.path.exists('.\python125.exe')
False
os.path.getmtime(path) —— 文件或文件夾的最后修改時間,從新紀元到訪問時的秒數。
os.path.getatime(path) —— 文件或文件夾的最后訪問時間,從新紀元到訪問時的秒數。
os.path.getctime(path) —— 文件或文件夾的創建時間,從新紀元到訪問時的秒數。
os.path.getsize(path) —— 文件或文件夾的大小,若是文件夾返回0
os.path.split(path) —— 將路徑分解為(文件夾,文件名)的元組
os.path.join(path2,path3,...) —— 將path進行組合,若其中有絕對路徑,則之前的path將被刪除
path='C:\Software\Python35\python.exe'
os.path.split(path) # 拆分路徑
('C:\Software\Python35', 'python.exe')
os.path.split('.')
('', '.')
os.path.split('C:\Software\Python35') # 注意于下一行的區別
('C:\Software', 'Python35')
os.path.split('C:\Software\Python35\')
('C:\Software\Python35', '')
os.path.join('C:\Software\Python35', 'python.exe')
'C:\Software\Python35\python.exe'
os.path.join('C:\Software\Python35\a\b', 'C:\Software\Python35\c')
'C:\Software\Python35\c'
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。