免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5611 | 回复: 6
打印 上一主题 下一主题

请教: Python 复制 与 批处理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-29 17:24 |只看该作者 |倒序浏览
各位大拿:

我想把源文件夹内文件有选择地复制到目标文件夹,在批处理中是这样实现的:

copy "c:\Program Files\Poco2007\DownLoads\*.wmv" d:\movies\
copy "c:\Program Files\Poco2007\DownLoads\*.rm" d:\movies\
copy "c:\Program Files\Poco2007\DownLoads\*.rmvb" d:\movies\
copy "c:\Program Files\Poco2007\DownLoads\*.rar" d:\movies\

请问:在Python中,怎么写?
我知道 shutil 模块很有用,但如何筛选呢?

谢谢!

论坛徽章:
0
2 [报告]
发表于 2008-04-29 22:20 |只看该作者
完全使用PYTHON,我只知道需要配合os.walk,或者os.listdir之类的函数
不够既然楼主觉得批处理很方便
不如直接用os.system()运行那些批处理了~

论坛徽章:
0
3 [报告]
发表于 2008-05-01 00:12 |只看该作者

回复 #2 lonelycat1984 的帖子

谢谢你的回复。

在这个问题上,批处理确实简单。不过本人想学习Python,并用它解决实际问题。

复制这样写行吗:

import shutil
shutil.copytree("c:/Program Files/Poco2007/DownLoads/", "d:/movies/")

那么筛选呢, 怎样有选择的复制?

论坛徽章:
0
4 [报告]
发表于 2008-05-01 00:47 |只看该作者
glob 模块

论坛徽章:
0
5 [报告]
发表于 2008-05-02 11:50 |只看该作者

回复 #4 BJSH 的帖子

是的。glob模块很有用。

哪位能帮忙写下完整的程序吗?

论坛徽章:
0
6 [报告]
发表于 2008-05-02 14:28 |只看该作者
勉强可以工作
import os
import shutil
s='g:\\'
d='g:\\a'
for file in os.listdir(s):
    p,f = os.path.split(file)
    if f.split('.')[-1:][0] in ['mp3','wma']:
        shutil.copy(file,d)

论坛徽章:
0
7 [报告]
发表于 2008-05-11 18:07 |只看该作者
原帖由 luffy.deng 于 2008-5-2 14:28 发表
勉强可以工作
import os
import shutil
s='g:\\'
d='g:\\a'
for file in os.listdir(s):
    p,f = os.path.split(file)
    if f.split('.')[-1:][0] in ['mp3','wma']:
        shutil.copy(file,d)


if f.split('.')[-1:][0] in ['mp3','wma']:

指 后缀 是 mp3和wma的文件么
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP