【发布时间】:2012-07-19 04:53:50
【问题描述】:
帮助!我正在编写一个脚本来通过移动具有某些扩展名的文件来组织我的桌面。它似乎工作正常,但是当我让它在我的桌面上松开时,发生了一些奇怪的事情。
因此,我将所有文件复制到动态创建的文件夹中,例如“PDFs”和“IMAGES”,但由于某种原因,当我运行脚本时,它没有创建文件夹而是创建文件,并继续将文件存储在另一个文件中。
我需要让这些人回来,但我不知道该怎么做。顺便说一句,我正在使用 Windows 7。下面是我的代码。任何帮助将不胜感激。
import shutil
import os
pwd = os.getcwd()
working_path = 'C:\\Users\\grayson\\Desktop'
wp = working_path
folders = {'pdf':'PDFS','img':'IMAGES'}
def main():
create_folders();
for d in os.walk(wp):
files = d[2]
break
print files
for filename in files:
order_file( filename )
def create_folders():
for fol in folders.keys():
fol_name = folders[fol]
if not os.path.isdir(fol_name):
os.mkdir(fol_name)
def order_file(fname):
split_name = fname.split('.')
exten = split_name[len(split_name)-1]
if exten == 'pdf':
shutil.move(wp + '\\' + fname, wp + '\\' + folders['pdf'])
elif exten == 'jpg' or exten == 'png' or exten == 'gif':
shutil.move(wp + '\\' + fname, wp + '\\' + folders['img'])
else:
print 'Sumin else'
main()
【问题讨论】:
-
让我猜猜,你没有从桌面目录中运行它吗?不幸的是,这个脚本造成的损害是不可逆转的。你想要一个解释你的脚本做错了什么的答案吗?
-
shutil.move(wp + '\\' + fname, wp + '\\' + folders['pdf'])如果您没有从桌面运行脚本,此语句会将您的文件从文件名重命名为桌面上的 PDFS,其他移动语句也是如此
标签: python windows file extract