組織檔案 對檔案進行複製 移動 刪除 壓縮

2021-08-21 06:57:47 字數 2496 閱讀 7949

二、遍歷資料夾

三、壓縮檔案

# -*- coding: utf-8 -*-

import shutil

import os

'''使用shutil.copy進行檔案複製

(這裡採用相對位址)

'''# 更改當前程式工作目錄到所需目錄

os.chdir(r"d:\test")

# 複製111.txt檔案到當前目錄,並重命名為222.txt

shutil.copy("111.txt","222.txt")

# 複製111.txt檔案到下級222目錄,同時預設以原檔名命名

shutil.copy("111.txt","222")

# 複製111.txt檔案到下級222目錄,同時以222.txt檔名命名

shutil.copy("111.txt",r"222\222.txt")

'''使用shutil.copytree進行資料夾複製,會複製資料夾內的所有檔案及所有子資料夾

(這裡採用絕對位址)

'''# 複製222資料夾為111資料夾(必須指定目標資料夾名)

shutil.copytree(r"d:\test\222",r"d:\test\111")

# -*- coding: utf-8 -*-

import shutil

'''使用shutil.move移動檔案或資料夾

'''# 將111.txt移動到222資料夾下,因222資料夾存在,則以111.txt命名,檔案會被移動到222資料夾下

print(shutil.move(r"d:\test\111.txt",r"d:\test\222"))

# 將111.txt移動到333資料夾下,因333資料夾不存在,則以333命名(通常這種情況是錯誤的,且容易被忽略)

print(shutil.move(r"d:\test\111.txt",r"d:\test\333"))

# 將111.txt移動到333\444資料夾下,因333\444資料夾不存在,則會丟擲異常filenotfounderror

print(shutil.move(r"d:\test\111.txt",r"d:\test\333\444"))

# 同理也可以移動資料夾到指定目錄(路徑若不存在,則會依級建立資料夾)

print(shutil.move(r"d:\test\222",r"d:\test\新建資料夾1\222\333"))

# -*- coding: utf-8 -*-

import shutil

import os

import send2trash

'''使用os.unlink徹底刪除檔案

使用os.rmdir徹底刪除空資料夾

使用shutil.rmtree徹底刪除資料夾(非空也可以)

使用send2trash.send2trash刪除檔案或資料夾(非空也可以,會傳送到**站,是一種較為安全的刪除方式)

'''# 刪除d:\test\111.txt檔案

os.unlink(r"d:\test\111.txt")

# 刪除111資料夾(111為空資料夾)

os.rmdir(r"d:\test\111")

# 刪除222資料夾(222為非空資料夾)

shutil.rmtree(r"d:\test\222")

# 刪除『新建資料夾 (2)』資料夾

send2trash.send2trash(r"d:\test\新建資料夾 (2)")

'''

遍歷某個資料夾,依級列出當中所有的資料夾路徑字元、子資料夾列表、檔案列表。

如果傳入的path是絕對路徑,則此時返回值也為絕對路徑。

如果傳入的path是相對路徑,則此時返回值也為相對路徑,

如果此時想使用絕對路徑,可以用sys.path[0]獲取當前工作目錄。

'''for foldername, subfolders, filenames in os.walk(r"d:\test"):

# 返回當前資料夾絕對路徑字串

print(foldername)

# 返回當前資料夾下的所有子資料夾列表

print(subfolders)

# 返回當前資料夾下的所有檔案列表

print(filenames)

# 建立乙個新的壓縮檔案

example_zipfile=zipfile.zipfile("test2.zip","w")

# 將檔案寫入到壓縮檔案中(前面建立壓縮檔案時傳入的引數:w為覆蓋,a為附加,r為唯讀)

example_zipfile.write(r"test\新建資料夾2")

# 檢視該壓縮檔案下存在的檔案或資料夾列表

print(example_zipfile.namelist())

# 關閉壓縮檔案

example_zipfile.close()

複製,刪除,移動完整檔案

1.刪除完整檔案 包括當前檔案目錄 刪除完整目錄 傳入要刪除的資料夾 function deldir dir else rmdir dir 移除該空資料夾 deldir imgs 2.複製完整目錄 複製完整目錄 dir1 原始檔路徑 dir2目的檔案路徑 function copydir dir1,...

Java位元組流對檔案進行複製操作

public static void main string args throws ioexception read byte b 和上個read 方法沒別的 一次讀寫乙個位元組,和一次讀寫1024或者更多位元組那個想想都知道哪個快 呵呵,但是緩衝區設定的大也會導致資源浪費,也會影響讀取速度 pr...

檔案的複製 移動與刪除

nindex 標誌操作 0 複製 1 刪除 2 移動 strsourcedir 被操作的檔案 strdenstinationdir 複製或移動的目標路徑,刪除時該值為空 void onexecute int nindex,cstring strsourcedir,cstring strdestina...