我正在尝试在python中做自己的Files2Folder,因为它可以满足我的需求。我有它以便它从文件名创建一个文件夹,但是每当我尝试将文件移到新创建的文件夹中时,都会返回错误。有什么想法吗?
import os
import os.path
import shutil
from pathlib import Path
import glob
rootdir = r'T:\rcloneFolder'
keepExt = ('.mkv', '.mp4', '.avi')
searchPath = Path(rootdir)
for file in searchPath.rglob("*"):
if file.name.endswith(keepExt):
print(file)
newName = (os.path.splitext(file.name)[0])
newFolders = os.mkdir(os.path.join(searchPath,newName))
print("Made File Directory: " + newName)
name = newName + '.mkv'
shutil.move(file, os.path.join(rootdir, name))
答案 0 :(得分:0)
from pathlib import Path
import glob, os
import shutil
for file in glob.glob('*.webm'):
folder_name = file.split('.')[0]
Path(folder_name).mkdir(parents=True, exist_ok=True)
shutil.move(file, folder_name)
答案 1 :(得分:0)
我认为您要查找的是您需要使用rootdir
而不是searchPath
到os.path.join
,因为join需要一个纯字符串,所以新文件名将是{ {1}},因为您想重命名扩展名并将其移动到具有相同名称的文件夹中,因此以下代码相信可以满足您的需求:
os.path.join(rootdir, newName, newName) + ".mkv"