精品欧美一区二区三区在线观看 _久久久久国色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)

亚洲伦理一区二区| 亚洲国产www| 日韩精品一区二区三区免费观看| 欧美日韩高清一区二区三区| 欧美黄网在线观看| 午夜影院在线视频| 日本亚洲三级在线| 久久91精品国产91久久跳| 性久久久久久久久久久| 小明成人免费视频一区| 亚洲精品视频在线看| 免费久久一级欧美特大黄| 一二三四区在线| 亚洲精品极品| 久久视频中文字幕| 亚洲AV无码国产精品| 亚洲电影二区| 欧美日韩在线看| 久久av秘一区二区三区| 青青久在线视频| 国产在线观看黄| 国产精品伊人| 午夜日韩在线电影| 中文字幕日韩一区二区三区| 视频二区在线| 国产成人8x视频一区二区| 国产精品成人国产乱一区 | 成人涩涩网站| 欧美美女一区二区三区| 免费日韩视频在线观看| 日韩精品卡一| 亚洲色图.com| 一本久久a久久精品vr综合| 亚洲av成人精品日韩在线播放| 国产精品一区二区你懂的| 国产美女搞久久| 日韩欧美99| 黄色av网址在线播放| 最新真实国产在线视频| 久久久综合视频| 国产精品一区在线观看| www.国产麻豆| 国产一区二区精品久久| 国产精品视频一区二区高潮| 最新中文字幕一区| 亚洲精品一级| 久久久久久午夜| 久草视频在线资源| 亚洲成人av| 久久精品国产2020观看福利| 五月婷婷六月香| 日韩精品水蜜桃| 日韩性生活视频| 任我爽在线视频| 日韩影院二区| 久久婷婷国产麻豆91天堂 | а√中文在线天堂精品| 日韩欧美在线网站| 中文字幕在线视频一区二区| 国产情侣一区在线| 日韩视频一区二区三区在线播放 | 亚洲精品电影| 日韩午夜在线视频| 国产真实乱在线更新| 66视频精品| 久久91亚洲人成电影网站 | 三区四区在线视频| 国产精品不卡在线观看| 在线视频不卡一区二区| 黄色免费在线看| 一区二区久久久久久| 久久亚洲精品无码va白人极品| 蜜桃av在线播放| 欧美综合在线视频| 91国内在线播放| 一区中文字幕电影| 亚洲国产日韩欧美在线99| 在线免费观看成年人视频| 少妇精品久久久| 日韩在线播放视频| 久久久91视频| 久久福利一区| 成人做爽爽免费视频| 男人天堂网在线视频| 91麻豆精东视频| 伊人久久99| 97人澡人人添人人爽欧美| 日本高清成人免费播放| 色哟哟在线观看视频| 美女福利一区| 日韩一中文字幕| 久草国产精品视频| 蜜臀av性久久久久蜜臀av麻豆| 999国产在线| 男人的天堂在线免费视频| 中文字幕亚洲在| 免费看日本毛片| 欧美韩国日本| 亚洲电影天堂av| 四虎影视1304t| 1024精品一区二区三区| 国产精品中文字幕在线| 姝姝窝人体www聚色窝| 国产精品日产欧美久久久久| 久久国产午夜精品理论片最新版本| 亚洲日本网址| 久久久久久自在自线| 午夜精品爽啪视频| 免费毛片小视频| 国产中文欧美日韩在线| 亚洲精品小视频在线观看| 午夜爱爱毛片xxxx视频免费看| 亚洲一区图片| 成人欧美一区二区| 日本中文字幕伦在线观看| 图片区小说区区亚洲影院| 久久综合在线观看| 欧洲激情综合| 午夜精品免费视频| 国产富婆一级全黄大片| 日本一区二区三区dvd视频在线| 欧美日韩不卡在线视频| 国内不卡的一区二区三区中文字幕| 亚洲毛茸茸少妇高潮呻吟| 精品无码一区二区三区电影桃花 | 成人激情视频小说免费下载| 蝌蚪视频在线播放| 天天综合网 天天综合色| 亚洲欧美日韩中文字幕在线观看| 四季av一区二区三区免费观看 | 看黄色一级大片| av中文字幕亚洲| 91嫩草国产丨精品入口麻豆| 免费视频观看成人| 亚洲视频专区在线| 东京热一区二区三区四区| 成人91在线观看| 轻点好疼好大好爽视频| 国产精品久久久久久久久久辛辛 | 五月天中文字幕| 国产亚洲欧美日韩日本| 六月激情综合网| 偷拍亚洲精品| 国产91|九色| 亚欧在线观看视频| 天堂网在线播放| 91免费小视频| 国产极品在线视频| 丝袜久久网站| 日本中文字幕成人| 国产日本在线视频| 色婷婷国产精品| 国产aⅴ激情无码久久久无码| 另类图片国产| 日韩理论片在线观看| 日韩成人亚洲| 日韩中文字幕视频在线| 国产女人18毛片水18精| 亚洲免费观看高清完整版在线观看熊| 亚洲一区二区图片| 国产精品www994| 国产精品v欧美精品v日韩精品| 97蜜桃久久| 亚洲视频视频在线| 亚洲天堂男人网| 亚洲人成网站色在线观看| 九色91porny| 亚洲深夜福利| 亚洲日本无吗高清不卡| 国产精品色婷婷在线观看| 久久91精品国产91久久久| 色哟哟国产精品色哟哟| 在线精品国精品国产尤物884a| 国产不卡在线观看视频| 国产成人精品一区二区三区网站观看 | 99久久久久成人国产免费| 一区二区三区中文字幕电影 | 国产精品久久久久久久久动漫| 制服丝袜中文字幕第一页| 欧美在线网址| 蜜桃久久精品乱码一区二区| 国产欧美自拍| 欧美区二区三区| 巨骚激情综合| 欧美一区中文字幕| 国产污污视频在线观看 | 视频一区二区在线观看| 国产电影一区二区| 26uuu久久噜噜噜噜| 色大18成网站www在线观看| 亚洲丁香久久久| 探花国产精品一区二区| 亚洲欧美日韩国产综合在线| 人妻无码一区二区三区| 国产一区二区女| 鲁一鲁一鲁一鲁一澡| 911精品美国片911久久久| 久久婷婷开心| 国产日韩一区二区三免费高清| 欧洲精品久久久| 影音先锋男人资源在线| 国产亚洲精品日韩| 亚洲男人天堂久久| 在线观看国产精品网站| 国产午夜精品一区二区理论影院| 国产精品视频一区二区三区不卡| 偷偷色噜狠狠狠狠的777米奇| 久久精品国产精品亚洲红杏| 国产午夜大地久久| 自拍偷拍欧美| 日韩欧美亚洲日产国| 欧美激情影院| 亚洲综合自拍一区| 精品欧美日韩精品| 97在线看福利| 色老头在线观看| 久久久精品一区| 91在线观看| 国产视频精品va久久久久久| 精品人妻aV中文字幕乱码色欲| 91高清在线观看| 久久不卡免费视频| 亚洲影院在线观看| 亚洲伦理一区二区三区| 国产欧美一区二区三区鸳鸯浴| avtt香蕉久久| 不卡av在线网| 亚洲天堂2024| 国产91富婆露脸刺激对白| 不用播放器的免费av| 美女视频黄免费的久久| 免费男同深夜夜行网站| 久久狠狠婷婷| 国产最新免费视频| 亚洲国产一区二区三区高清| www.国产二区| 黄色欧美成人| 欧美极品少妇无套实战| 中文字幕av亚洲精品一部二部| 正在播放精油久久| 成人在线免费观看视频| 亚洲欧美精品| 成人羞羞网站| 综合网五月天| 亚洲区综合中文字幕日日| 国产系列第一页| 久久久久久久久国产一区| 手机成人av在线| 你懂的亚洲视频| 国产1区2区3区中文字幕| 欧美三级网页| 久操网在线观看| 国产一区二区你懂的| 啊啊啊一区二区| 麻豆九一精品爱看视频在线观看免费| 99999精品视频| 久久国产高清| 午夜宅男在线视频| 久久国产剧场电影| www.日本久久| 国产aⅴ精品一区二区三区色成熟| 麻豆tv在线观看| 26uuu精品一区二区三区四区在线| 人妻少妇无码精品视频区| 国产精品无遮挡| 国产十六处破外女视频| 亚洲国产日日夜夜| 美日韩一二三区| 在线看一区二区| av中文字幕免费| 亚洲电影在线观看| 国产高清一级毛片在线不卡| 日韩午夜在线视频| 金瓶狂野欧美性猛交xxxx| 2019亚洲日韩新视频| 成人综合网站| 147欧美人体大胆444| 好吊妞国产欧美日韩免费观看网站 | 国产精品久久久久久久久搜平片| 欧美 日韩 国产 一区二区三区| 亚洲一区二区三区美女| aaa在线视频| 欧美一区二区在线不卡| 天堂а√在线8种子蜜桃视频| 在线视频欧美性高潮| 伊人电影在线观看| 国产福利精品av综合导导航| **日韩最新| 好吊色欧美一区二区三区| 成人一级毛片| 少妇av一区二区三区无码| 免费精品99久久国产综合精品| 中文字幕久久久久久久| 国产日韩欧美高清在线| 久久久久免费看| 欧美在线不卡视频| 丰满人妻一区二区三区四区53| 亚洲天堂免费视频| 国产极品人妖在线观看| 国产精品电影观看| 99久久婷婷国产综合精品青牛牛| 亚洲精蜜桃久在线| 亚洲国产一区二区三区a毛片| 五月天激情播播| 久久伊99综合婷婷久久伊| 免费一级a毛片夜夜看| 欧美在线免费播放| 欧美性猛交 xxxx| 久久久99免费视频| 香蕉久久免费电影| 国内不卡一区二区三区| 亚洲人体av| 久久国产激情视频| 久久久亚洲精品石原莉奈| 久久久精品99| 欧美一级夜夜爽| 欧美成年黄网站色视频| 国产成人av在线| 美国十次av导航亚洲入口| 992tv快乐视频| 久久精品国产在热久久| 国产传媒国产传媒| 欧美性猛交xxxx乱大交蜜桃| 日韩中文字幕免费观看| 欧美成人在线免费| 高清久久一区| 中文字幕综合在线观看| 日本免费新一区视频| 国产麻豆天美果冻无码视频| 亚洲韩国精品一区| 99热这里只有精品在线观看| 日韩在线资源网| 国产精品久久久久77777丨| 日韩中文一区二区三区| 久久精品人人| 丰满少妇一区二区| 狠狠躁夜夜躁久久躁别揉| 欧美一区二不卡视频| 久久久久久高潮国产精品视| 中文无码日韩欧| www.好吊操| 成人av高清在线| 欧美福利视频一区二区| 日韩成人在线电影网| 九色porny丨国产首页在线| 好看的日韩精品| 国产欧美日韩综合一区在线播放 | 国产精品久久三| 在线观看不卡的av| 日韩网站免费观看| 国产精品一区二区精品| 91视频 - 88av| 99久久免费国产| 国产综合精品视频| 亚洲人成绝费网站色www| 日韩一级二级| 先锋影音男人资源| 国产91精品久久久久久久网曝门| 国产精品9191| 亚洲九九九在线观看| 久久精品女人天堂av免费观看 | 欧美三级视频在线| 免费在线看黄网站| 亚洲最大福利视频| 亚洲成人在线| av男人的天堂av| 欧美乱熟臀69xxxxxx| av免费在线观| 免费日韩av电影| 蜜臀av一级做a爰片久久| 国产精品白嫩白嫩大学美女| 精品成a人在线观看| 国产精品极品美女在线观看| 亚洲国产精品日韩| 国产一区二区0| 久久99精品波多结衣一区| 亚洲性视频网站| 一区三区自拍| 免费男同深夜夜行网站| 亚洲精品日产精品乱码不卡| 日韩一级片免费看| 国产精品人成电影在线观看| 欧美成人tv| 亚洲综合网在线观看| 91精品国产91久久久久久最新毛片 | 成人av国产| 无码人妻aⅴ一区二区三区玉蒲团| 欧美日韩在线影院| 思思99re6国产在线播放| 成人av影视在线| 日本中文字幕一区二区有限公司| 午夜69成人做爰视频| 亚洲女人初尝黑人巨大| 国产色99精品9i| 污污视频网站免费观看| 亚洲国产一区二区a毛片| 77导航福利在线| 久久伦理网站| 国产成人丝袜美腿| 中文字幕日韩经典|