デスクトップ上のファイルを拡張子に基づいてフォルダーにすばやく整理するための Python スクリプトを作成したいと考えています。基本的に、ループを使用してファイルを取得し、何かを実行し、次のファイルに移動するにはどうすればよいでしょうか?
2 に答える
4
必要なものはすべて、おそらくos
ライブラリに含まれています。より具体的には、そのos.path
ビットとshutil
1 つに含まれています。
を使用してディレクトリ ツリーを調べたり、os.walk
ファイルを移動したりするには、shutil.move
.
編集:あなたを動かすために私が一緒にハックした小さなスクリプト:
import os
import shutil as sh
from collections import defaultdict
DESKTOP = '/home/mac/Desktop'
#This dictionary will contain: <extension>: <list_of_files> mappings
register = defaultdict(list)
#Populate the register
for dir_, dirs, fnames in os.walk('/home/mac/Desktop'):
for fname in fnames:
register[fname.rsplit('.', 1)[1]].append(os.path.join(dir_, fname))
#Iterate over the register, creating the directory and moving the files
#with that extension in it.
for dirname, files in register.iteritems():
dirname = os.path.join(DESKTOP, dirname)
if not os.path.exists(dirname):
os.makedirs(dirname)
for file_ in files:
sh.move(file_, dirname)
于 2012-04-22T23:44:29.800 に答える