精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

移動(dòng)并重命名2000個(gè)文件,Python,3秒

開(kāi)發(fā) 后端
今天介紹的案例是如何利用Python來(lái)自動(dòng)化移動(dòng)、修改、重命名文件/夾,這樣的操作在日常辦公中經(jīng)常會(huì)用到,若能掌握用Python實(shí)現(xiàn)將會(huì)大大提高效率!

文章轉(zhuǎn)載自微信公眾號(hào)“早起Python”(zaoqi-python)。

大家好,又到了Python辦公自動(dòng)化(偷懶)專題。

今天介紹的案例是如何利用Python來(lái)自動(dòng)化移動(dòng)、修改、重命名文件/夾,這樣的操作在日常辦公中經(jīng)常會(huì)用到,若能掌握用Python實(shí)現(xiàn)將會(huì)大大提高效率!

所以我希望能夠通過(guò)這篇文章來(lái)讓大家了解:如何基于 os glob 和 shutil 對(duì)文件管理的綜合運(yùn)用!

一、需求描述

為了讓本文介紹的案例更有通用型,我新建了一個(gè)文件夾 files1 存放著 1800+ 個(gè)文件,如下所示:

需要完成的內(nèi)容如下:

將 1835 個(gè)文件移動(dòng)到新文件夾 file2,并且重命名文件,名字開(kāi)頭加上 序號(hào) 和 “終稿” 兩個(gè)字,如名字更改為 “1-終稿-xxxxx(原文件名)”

你心里可能想著:這是人做的事??? 但確實(shí)這是真實(shí)的需求,文件批量重命名非常常見(jiàn),如果沒(méi)有一些技巧,那么只能耗費(fèi)大量的時(shí)間和人力去做。這里的技巧,就是 Python。

另外還有一個(gè)問(wèn)題:要先移動(dòng)再重命名還是先重命名再移動(dòng)呢? 繼續(xù)往下看!

二、前置知識(shí)和數(shù)據(jù)準(zhǔn)備

1.  生成大量隨機(jī)文件

真實(shí)的辦公場(chǎng)景并不會(huì)這樣的需求,畢竟誰(shuí)想要無(wú)端給自己的電腦產(chǎn)生大量無(wú)用文件呢(也不要給別人的電腦亂用)。

不得不提,生成隨機(jī)文件能夠幫助我們更好的測(cè)試自己 Python 文件管理的技能。如果你沒(méi)有合適的文件夾和文件夾供自己練習(xí),那么為什么不自己寫個(gè)代碼產(chǎn)生呢?

當(dāng)然,在這個(gè)過(guò)程中我們也會(huì)學(xué)習(xí)一些知識(shí)點(diǎn),先看代碼:

  1. import random 
  2. import string 
  3.  
  4. for i in range(2000): 
  5.     random_str = ''.join(random.sample(string.ascii_letters + string.digits, random.randint(1, 11))) 
  6.     file = open(r"C:\\xxx\\file1" + random_str + ".txt", 'w+') # 前面路徑是產(chǎn)生文件的目標(biāo)文件夾 
  7.     file.write(''.join(random.sample(string.ascii_letters + string.digits, random.randint(1, 11)))) 
  8.     file.close() 

通過(guò) string 就可以獲得所有的字母和數(shù)字,利用 random.sample() 常規(guī)接受兩個(gè)參數(shù),一個(gè)是抽樣的范圍,一個(gè)是抽樣的次數(shù),默認(rèn)是放回抽樣。這樣就可以在給定的字母數(shù)字范圍內(nèi)隨機(jī)抽取 1-10 個(gè),但是返回的結(jié)果注意是列表,需要再用 .join 方法完成字符串拼接。

用隨機(jī)產(chǎn)生的名字生成文件后,再在其內(nèi)部用類似的方法隨機(jī)寫入一些內(nèi)容:

上面的寫法不夠優(yōu)雅,因?yàn)樾枰涮资褂?file.close() 釋放,更好的方法是直接利用上下文管理器 with 結(jié)構(gòu),減少出錯(cuò)的幾率:

  1. import random 
  2. import string 
  3.  
  4. for i in range(2000): 
  5.     random_str = ''.join(random.sample(string.ascii_letters + string.digits, random.randint(1, 11))) 
  6.     with open(r"C:\\xxx\\file1" + random_str + ".txt", 'w+') as file: 
  7.         file.write(''.join(random.sample(string.ascii_letters + string.digits, random.randint(1, 11)))) 

因?yàn)榧词故请S機(jī)產(chǎn)生名字,但抽樣的范圍和次數(shù)不大決定了 2000 次抽樣會(huì)有一些抽簽組合成的名字完全一樣,后面形成的文件會(huì)覆蓋之前產(chǎn)生的文件,最終導(dǎo)致產(chǎn)生的文件沒(méi)有 2000 個(gè)。

2. 重命名文件/文件夾

需要用到內(nèi)置庫(kù) os 的 os.rename() 方法:

  1. import os 
  2. os.rename('practice.txt', 'practice_rename.txt')  # 重命名文件 
  3. os.rename('文件夾1', '文件夾2') # 重命名文件夾 

雖然需求中有重命名文件的需求,但實(shí)際上并不需要直接借助這個(gè)方法。

3. 移動(dòng)文件/文件夾

需要用到內(nèi)置庫(kù) shutil 的 shutil.move 方法:

  1. import shutil  
  2. shutil.move(r'.\practice.txt', r'.\文件夾1/')  
  3. shutil.move(r'.\practice.txt', r'.\文件夾1/new.txt') 

注意到上面后兩行代碼的區(qū)別嗎?前一行是將目標(biāo)文件移動(dòng)到目標(biāo)文件夾里,而后一行,在將目標(biāo)文件移動(dòng)到目標(biāo)文件夾里的同時(shí),能夠?qū)ζ溥M(jìn)行重命名

也就是說(shuō),我們并不需要用 os.rename 先命名文件再用 shutil.move 將其移動(dòng)的指定文件夾,而是可以用 shutil.move 一步到位。

4. 遍歷獲取文件

采用基于 glob 庫(kù)的迭代框架:

  1. import glob 
  2. path = xxx 
  3.  
  4. for file in glob.glob(f'{path}/**/*.xlsx', recursive=True):  
  5.     pass 

上面的代碼能夠獲取給定路徑內(nèi)部所有文件夾下的 Excel 文件(.xlsx 格式), recursive參數(shù)默認(rèn)為 False,當(dāng)為 True 時(shí)允許逐級(jí)遍歷

而本例需要獲取給定文件夾下的所有 .txt 文件,則更加簡(jiǎn)單:

  1. import glob 
  2. path = xxx 
  3.  
  4. for file in glob.glob(f'{path}/*.txt'):  
  5.     pass 

三、代碼實(shí)現(xiàn)

在上面一節(jié)我們已經(jīng)把需求拆分為多個(gè)小塊并理清了思路,現(xiàn)在可以開(kāi)始寫代碼了。首先導(dǎo)入需要的庫(kù):

  1. import os 
  2. import shutil 
  3. import glob 
  4.  
  5. path = r"C:\xxx" # 存放大量需更名移動(dòng)文件的文件夾路徑的上一級(jí)路徑 

上文提到,不需要利用 os.rename 那為什么要導(dǎo)入 os 庫(kù)呢?

一方面因?yàn)橐ㄟ^(guò)這個(gè)庫(kù)產(chǎn)生新的文件夾。也可以手動(dòng)完成,但交給代碼多了判斷也不容易出錯(cuò):

  1. if not os.path.exists(path + r'\file2'):  
  2.     os.mkdir(path + r'\file2') 

另一方面下文還會(huì)用它獲取文件名,然后就可以移動(dòng)更名一步到位,glob 迭代文件框架遍歷獲取文件絕對(duì)路徑:

  1. count = 1 # 生成序號(hào) 
  2. for file in glob.glob(f'{path}\\測(cè)試\\*.txt'): 
  3.     # 這里是文件絕對(duì)路徑,可以用字符串方法直接替換修改,但為了方便理解我還是用路徑拼接 
  4.     filename = os.path.basename(file) 
  5.     shutil.move(file, path + r'\file2' + f'\{count}-終稿-{filename}') 
  6.     count += 1 

看到?jīng)],Python、3秒、搞定、干飯!

 

責(zé)任編輯:趙寧寧 來(lái)源: 早起Python
相關(guān)推薦

2010-11-19 13:48:18

2011-03-04 09:48:21

PureFTPd

2009-12-22 15:28:51

Linux批量重命名文

2018-06-25 13:10:16

Linux復(fù)制重命名

2019-09-03 08:57:52

Linux命令軟件

2020-09-11 09:23:42

文件重命名Linux字符串

2020-06-09 07:42:30

重命名文件 Linux

2023-11-25 17:13:49

Linux重命名文件

2010-03-09 15:23:30

Linux批量重命名

2010-03-03 16:11:01

Linux ubant

2024-09-04 08:02:12

2019-11-20 09:42:59

Windows 10重命名照片

2018-10-31 15:30:11

Linux命令重命名

2021-10-09 07:52:01

Go程序重命名

2013-03-22 15:40:32

VS項(xiàng)目整體命名.NET

2011-03-31 14:36:55

2019-04-18 10:35:55

Windows 10重命名文件夾

2011-07-26 18:06:00

SQL Server數(shù)批量重命名

2024-06-19 10:53:45

2011-12-22 10:08:56

塞班諾基亞Belle
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产精品我不卡| 久久精品人人爽| av五月天在线| 黄网站免费在线播放| 国产成a人亚洲| 91wwwcom在线观看| 久久久久人妻一区精品色| 亚洲精品在线播放| 欧美午夜精品久久久久久孕妇| av动漫免费观看| 性高潮久久久久久久久久| 奇米888四色在线精品| 欧美乱大交xxxxx另类电影| www.自拍偷拍| 在线精品国产亚洲| 欧美日韩成人综合在线一区二区| 欧美精品久久久久久久久久久| 成年人视频在线看| 94色蜜桃网一区二区三区| 国产精品视频地址| 在线观看亚洲欧美| 欧美黄在线观看| 中文字幕精品国产| 真人bbbbbbbbb毛片| 亚洲国产高清在线观看| 欧洲国内综合视频| 国产a级一级片| 日本精品600av| 综合分类小说区另类春色亚洲小说欧美| 国产伦精品一区二区三区高清版 | 真实乱偷全部视频| 全球最大av网站久久| 精品久久久久久亚洲国产300| 成人短视频在线看| av在线首页| 久久久久久久久97黄色工厂| 国产欧美亚洲日本| 国产91绿帽单男绿奴| 极品少妇一区二区| 国产中文日韩欧美| 中文字幕一区二区三区四区视频| 亚洲一区日本| 97久久久免费福利网址| 久久人人爽人人爽人人| 在线一区电影| 欧美刺激性大交免费视频| 三级黄色片在线观看| 精品国产一区二区三区| 亚洲欧美精品一区二区| 人妻无码一区二区三区| 婷婷五月色综合香五月| 日韩av一区在线| 精品无码国产一区二区三区51安| 成人爽a毛片免费啪啪红桃视频| 欧美一区二区三区电影| 欧美激情第一区| 国产一区二区三区免费在线 | 欧美oldwomenvideos| 国产一区二区三区欧美| av黄色在线免费观看| 国产精品一区二区99| 亚洲人成网站999久久久综合| 蜜臀av一区二区三区有限公司| 玖玖玖免费嫩草在线影院一区| 亚洲成人精品久久久| 88av在线播放| 一区二区三区视频免费观看 | 麻豆免费在线观看| 亚洲视频在线一区| 国产又粗又爽又黄的视频| www在线免费观看视频| 亚洲精品国产精品乱码不99| 91黄色在线看| 深夜av在线| 在线观看网站黄不卡| 亚洲美女性囗交| 欧美久久一区二区三区| 欧美精品一区二区高清在线观看| 亚洲男人在线天堂| 欧美日韩国产高清电影| 久久久av网站| 日本在线视频免费观看| 老司机午夜精品视频| 国产欧美亚洲视频| 亚洲第一精品网站| 久久久久综合网| 色香蕉在线观看| 成人在线高清免费| 91成人在线精品| 午夜激情av在线| 亚洲不卡在线| 国产一区二区三区免费视频| 波多野结衣爱爱视频| 在线亚洲自拍| 成人激情视频在线观看| 少妇荡乳情欲办公室456视频| 国产亚洲欧美中文| 成人在线免费高清视频| 婷婷电影在线观看| 日韩一区二区三区免费看| 国产人妻人伦精品1国产丝袜| 日韩精品一卡| 91av成人在线| 精品国产av一区二区三区| 久久久久免费观看| 免费看欧美黑人毛片| 欧美一级二级视频| 亚洲精品xxxx| 黄色片在线观看网站| 玖玖视频精品| 黄色小网站91| 在线看三级电影| 欧美亚洲动漫精品| 内射中出日韩无国产剧情| 99成人在线视频| 日本精品中文字幕| 手机在线不卡av| 一区二区三区中文字幕在线观看| 无码内射中文字幕岛国片| jazzjazz国产精品麻豆| 最新69国产成人精品视频免费| 日本一区二区不卡在线| 国产一区二区在线观看视频| 水蜜桃一区二区| 色网在线免费观看| 亚洲第一偷拍网| 欧美成人aaa片一区国产精品| 久久精品美女| 亚洲va综合va国产va中文| 伦理一区二区三区| 九九热精品在线| 96日本xxxxxⅹxxx17| 久久久九九九九| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 日本高清久久| 欧美精品一本久久男人的天堂| 中文字幕欧美色图| 国产亚洲精品bt天堂精选| 日韩欧美一区二| 欧美大胆视频| 国产69久久精品成人| 少妇人妻偷人精品一区二区| 一区二区国产视频| 先锋资源在线视频| 中文乱码免费一区二区三区下载| 国产日韩在线亚洲字幕中文| 99re在线视频| 欧美巨大另类极品videosbest| 国产精品久久久视频| 日本成人在线电影网| 日日夜夜精品网站| 澳门av一区二区三区| 亚洲午夜未删减在线观看| 天堂网视频在线| 久久精品亚洲国产奇米99| 日韩精品一区二区三区不卡| 久久99国产精品视频| 国产精品久久久91| 免费日本一区二区三区视频| 欧美系列在线观看| fc2ppv在线播放| 国产精品影视网| 国产一线二线三线女| 青草久久视频| 国产精品成人av性教育| 在线观看精品一区二区三区| 欧美另类z0zxhd电影| jizz亚洲少妇| 99久久婷婷国产综合精品 | 国产免费成人| 欧美三级电影在线播放| 色综合天天色| 不卡av电影在线观看| 国产综合视频在线| 欧美性黄网官网| 国产7777777| 国产精品一二三四| 北条麻妃在线观看| 欧美wwwww| 国产精品一区在线播放| 校园春色亚洲色图| 久久亚洲精品成人| 午夜激情小视频| 欧美日韩一区二区三区四区五区 | 黄色av网址在线免费观看| 欧美三区在线视频| 久久久国产精华液| 久久午夜免费电影| 91aaa精品| 香蕉久久夜色精品国产| 在线不卡日本| 欧洲亚洲成人| 成人性生交xxxxx网站| 999av小视频在线| 在线播放日韩欧美| 狠狠人妻久久久久久综合麻豆| 一本久道中文字幕精品亚洲嫩| 三级黄色免费观看| 91免费在线播放| 永久免费黄色片| 日韩avvvv在线播放| 国产成人艳妇aa视频在线| 国产亚洲一区二区三区不卡| 成人免费看片网站| 免费视频观看成人| 26uuu久久噜噜噜噜| 2024最新电影免费在线观看| 亚洲天堂av女优| 国模私拍视频在线| 欧美一区二区三区婷婷月色| 日批视频免费在线观看| 一个色综合网站| 亚洲天堂一级片| 国产三级精品三级在线专区| 色悠悠在线视频| 激情综合网天天干| 丰满少妇在线观看| 国产日韩综合| 欧美这里只有精品| 欧美一区综合| 综合视频免费看| 欧美熟乱15p| 欧美日韩精品中文字幕一区二区| 操欧美女人视频| 91久久伊人青青碰碰婷婷| 岛国一区二区| 国产精品av在线播放| 一根才成人网| 51精品在线观看| 色一区二区三区| 91国产美女在线观看| 美女网站视频在线| 久久亚洲精品一区二区| 欧美13一16娇小xxxx| 中文字幕久久久av一区| 成人性爱视频在线观看| 亚洲欧美日韩中文在线制服| 无码精品人妻一区二区三区影院 | 玖玖综合伊人| 精品亚洲一区二区三区在线播放| 人妻无码中文字幕| 精品盗摄一区二区三区| 欧美自拍偷拍第一页| 欧美tk—视频vk| 亚洲乱码国产乱码精品精软件| 欧美一级欧美三级在线观看| 国产欧美一级片| 日韩欧美一区在线观看| 精品国自产拍在线观看| 欧美mv日韩mv国产| 东京干手机福利视频| 精品少妇一区二区三区在线播放| a在线观看免费| 日韩欧美国产系列| 国精产品一品二品国精品69xx| 亚洲国产精品va| 天天干,夜夜爽| 亚洲精品网站在线播放gif| 青青草视频免费在线观看| 亚洲欧美精品伊人久久| 午夜在线播放| 欧美老少配视频| 97蜜桃久久| 国产精品扒开腿做爽爽爽视频| 精品福利在线| 999视频在线观看| 牛牛视频精品一区二区不卡| 久久国产精品高清| 残酷重口调教一区二区| 黄色免费高清视频| 红桃视频国产精品| 日韩精品一区二区三区不卡| 久久精品久久久精品美女| 中文字幕55页| 91在线观看视频| 中文字幕av久久爽一区| 亚洲精品午夜久久久| 日韩成人在线免费视频| 91福利精品第一导航| 国产视频一区二区三区四区五区| 精品国产sm最大网站免费看 | www.欧美免费| heyzo中文字幕在线| 国产精品久久久久久久久久尿| 亚洲视频自拍| 精品国产乱码一区二区三区四区| 欧美日韩在线播放视频| 成年在线观看视频| 久久久一二三| 国产在线a视频| 久久精品在这里| 久久成人国产精品入口| 日本丰满少妇一区二区三区| 精品人妻伦一区二区三区久久| 日韩精品中文在线观看| 日p在线观看| 4438全国成人免费| 欧美黄视频在线观看| 日韩中文字幕一区| 激情视频一区| 日本不卡一区二区在线观看| 99re8在线精品视频免费播放| 综合 欧美 亚洲日本| 欧美日韩午夜剧场| 精品国产九九九| 中文字幕在线国产精品| 理论片午夜视频在线观看| 成人在线小视频| 欧美精品系列| 国产深夜男女无套内射| 国产一区91精品张津瑜| 人人妻人人澡人人爽| 天天免费综合色| 亚洲成熟女性毛茸茸| 久久精品人人爽| 精品国产黄a∨片高清在线| 久久99九九| 一区二区自拍| www.桃色.com| 国产精品欧美一区二区三区| 国产精品第5页| 亚洲国产又黄又爽女人高潮的| 国产秀色在线www免费观看| 国产精品观看在线亚洲人成网| 牛牛影视久久网| 国产天堂视频在线观看| 国产尤物一区二区| jizzjizzjizz国产| 欧美视频一区二区三区四区 | www.丝袜精品| 粉嫩av一区二区三区天美传媒| 美女网站一区二区| www.黄色在线| 91国偷自产一区二区三区成为亚洲经典| 免费av一级片| 久久久免费在线观看| 成人h动漫免费观看网站| 超碰人人爱人人| 国产精品一区专区| 丰满少妇高潮久久三区| 欧美一级精品在线| 中文在线字幕免费观看| 亚洲自拍中文字幕| 你懂的视频一区二区| 99中文字幕在线| 一区二区三区在线视频观看| www.av网站| 久久久免费电影| 欧美日韩看看2015永久免费 | 一区二区在线高清视频| 久久国产三级精品| www日韩在线| 精品国产三级电影在线观看| 久久亚洲导航| 激情小说综合网| 视频一区在线视频| 永久免费观看片现看| 欧美高清www午色夜在线视频| 麻豆网站在线观看| 爱情岛论坛亚洲入口| 亚洲人成毛片在线播放女女| 国产精品成人无码专区| 岛国av在线不卡| 成人免费高清在线播放| 成人国产精品一区二区| 欧美国产日本| 男生裸体视频网站| 欧美午夜精品理论片a级按摩| 日本中文字幕电影在线免费观看| 91超碰在线电影| 国产精品五区| 国产三级短视频| 日韩一区二区精品在线观看| gogo高清在线播放免费| 欧美日韩国产精品一卡| 美国av一区二区| 久久精品无码人妻| 亚洲无线码在线一区观看| 国内不卡的一区二区三区中文字幕| 97在线免费视频观看| 91女厕偷拍女厕偷拍高清| 一区二区视频网| 韩国欧美亚洲国产| 日本高清免费电影一区| 欧美xxxx日本和非洲| 91精品1区2区| 欧美性受ⅹ╳╳╳黑人a性爽| 玖玖玖精品中文字幕| 国内成人自拍视频| 性无码专区无码| 欧美成人全部免费| 国产欧美日韩精品高清二区综合区| 岛国毛片在线播放| 亚洲mv在线观看| 麻豆91在线| 欧美日产一区二区三区在线观看| 国产乱码精品一品二品| 9i看片成人免费看片| 欧美成人午夜免费视在线看片| 怕怕欧美视频免费大全|