中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用Python批量把文件復制到另一個文件夾的實現方法

發布時間:2020-10-21 10:05:50 來源:腳本之家 閱讀:195 作者:偽君子 欄目:開發技術

0 前言

大概是三個月前,有個人找我說要我幫忙寫幾行代碼,功能是把一個文件夾里面的所有文件拆分成 200 個文件一個文件夾,很簡單的。

我理解了之后,覺得還是挺簡單的,花了半個小時寫出來了,代碼也不多,代碼和思路都可以分享一下。

1 環境說明

Win10 系統下 Python3,編譯器是 Pycharm。

需要安裝 shutil 這個第三方庫,直接 pip install shutil 就可以了。

2 代碼

先導入需要用到的庫,os 是用來切換路徑和創建文件夾的。

shutil 是用來復制黏貼文件的

import os
from shutil import copy

i 用來計算文件數量,當 i 是 200 的倍數時,k 會 +1;k 用來計算新建文件夾的數量,方便創建文件夾。

save_dir 是想把復制出來的文件存放在的路徑

# i 用來計算文件數量,k 用來計算新建文件夾的數量
i = 0
k = 0

# 想保存到的根路徑
save_dir = r'F:\666'
# 如果目錄不存在,則創建
if not os.path.isdir(save_dir):
  os.makedirs(save_dir)

dir_name 是新的文件夾的命名;file_path 是想拆分的文件夾所在路徑,也就是一大堆文件所在的路徑。

os.listdir(file_path) 是獲取指定路徑下包含的文件或文件夾列表,在 Unix, Windows 下使用。

# 想保存的名字
dir_name = "junzi"

# 想拆分的文件夾所在路徑
file_path = r'F:\ALL'

# 獲取 file_path 下的文件和文件夾列表
# 因為 file_path 里面沒有文件夾,所以不處理有文件夾的情況
pathDir = os.listdir(file_path)

獲取到了列表,那就一個一個進行遍歷。0 是 200 的倍數,所以一開始 k 的值會 +1 。

allDir 是文件的名字+后綴名。from_path 就是當前這個被遍歷出來的文件的完整路徑,to_path是這個文件要復制到的路徑。

接著 copy(from_path, to_path) 完成復制黏貼,最后 i 自增1.

for allDir in pathDir:
  if( (i%200) == 0):
    print("200 的倍數,新建一個文件夾")
    k += 1

  print(allDir)
  from_path = os.path.join(file_path, allDir)
  to_path = save_dir + "\\" + dir_name + str(k)

  # 如果 to_path 目錄不存在,則創建
  if not os.path.isdir(to_path):
    os.makedirs(to_path)
  copy(from_path, to_path)
  i += 1

3 相關說明

shutil 的 copy() 是復制到一個新的地方,創建時間、修改時間、訪問時間都是新的,copy2() 則是會創建時間、修改時間、訪問時間這些也復制過去。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天镇县| 襄垣县| 高碑店市| 石首市| 梨树县| 湾仔区| 桑日县| 五指山市| 仲巴县| 盘锦市| 永兴县| 湟源县| 新野县| 筠连县| 额济纳旗| 漳平市| 栾川县| 南雄市| 德昌县| 枣阳市| 广昌县| 肃北| 名山县| 饶平县| 固镇县| 诸暨市| 平泉县| 五指山市| 安陆市| 定州市| 凤翔县| 崇义县| 泽州县| 蒙山县| 沙河市| 随州市| 大英县| 娱乐| 苏尼特右旗| 会理县| 剑河县|