我曾以為,寫腳本是很難的,直到我遇到了Python
前言隨著國內版權意識的跟進,很多影視音樂資源開始收費,而且度盤又經常隨意封殺各種資源,所以,為了保護資源,老司機們越來越傾向于把資源下載到本地,但隨著本地資源量的增多,資源管理就成了一件比較頭疼的事情;對于資源的管理,方法有很多,我比較喜歡為資源起一個好記的名字,但改文件名是一件無聊又耗時的事情,所以,一個批量重命名的腳本就變得非常重要.
1.批量添加前綴功能

批量重命名
批量重命名邏輯,分三步:
(1)確定需要命名的文件們
(2)確定新的文件名
(3)改名
邏輯理清,編碼就變得很簡單了

10行代碼
上圖源碼:
# 導入python內置的os模塊和sys模塊import osimport sys# 程序入口if __name__ == "__main__": # 獲取需要添加的前綴 pre = input("請輸入需要添加的前綴:") # 為了美觀,為前綴添加一個中括號 mark = "[%s]"%pre # 獲取本目錄下所有的文件名 old_names = os.listdir() # 遍歷目錄下的文件名 for old_name in old_names: # 跳過本腳本文件 if old_name != sys.argv[0]: # 用新的文件名替換舊的文件名 os.rename(old_name, mark+old_name)2.(擴展)添加移除前綴功能:
上面的10行程序,只能批量增加前綴,不能批量移除,不太完善,這是增加了移除前綴功能的源碼

添加/移除
上圖源碼:
import osimport reimport sysdef add_mark(): pre = input("請輸入需要添加的前綴:") mark = "[%s]"%pre old_names= os.listdir() for old_name in old_names: if old_name != sys.argv[0]: os.rename(old_name, mark+old_name)def remove_mark(): old_names= os.listdir() for old_name in old_names: try: result = re.match(r"(^/[.*/])(.*)", old_name).group(2) rm = old_name if result: os.rename(old_name, result) print("已為%s移除前綴"%rm) except Exception as e: passdef main(): while True: option = int(input("請選擇功能數值:/n1.添加前綴/n2.刪除前綴/n3.退出程序/n")) if option == 1: add_mark() elif option == 2: remove_mark() else: exit()if __name__ == "__main__": main(
后記:
python是一門簡潔強大的語言,隨著人工智能的興起,python也會變得越來越受人們的重視,你有什么理由不愛上python呢?
新聞熱點
疑難解答