我需要一個腳本將大於5mb的所有文件從給定文件夾複製到腳本需要在桌面上創建的新文件夾。然後它需要以遞增的順序重命名所有文件,並改變擴展名。 例如文件:slides.ppt,math.doc,essay.docx 到:lec1.doc,lec2.doc,lec3.docpython複製大於x的所有文件,然後重命名所有新文件
我得到這個腳本工作,它列出超過5MB的所有文件:
import os
# The directory that we are interested in
myPath = "C:\asd"
# The min size of the file in Bytes
mySize = '5000000'
# All the file paths will be stored in this list
filesList= []
for path, subdirs, files in os.walk(myPath):
for name in files:
filesList.append(os.path.join(path, name))
for i in filesList:
# Getting the size in a variable
fileSize = os.path.getsize(str(i))
# Print the files that meet the condition
if int(fileSize) >= int(mySize):
print("The File: " + str(i) + " is: " + str(fileSize) + " Bytes")
現在這打印出列表和列表是正確的,但我怎麼能從這裏? 我看着os和glob,但我很難想象這一點。
謝謝你們的幫助。
達尼
從一個簡單的例子開始,在腳本之外。例如嘗試'glob.glob('/ path/to/files/*。doc')'看看你得到了什麼。在python文檔中搜索重命名,至少有兩種方法可以做到這一點(os和pathlib都提供重命名功能)。 – miraculixx