V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
xxer
V2EX  ›  Python

python 批量复制文件名的问题

  •  
  •   xxer · 2015-03-25 09:48:48 +08:00 · 4112 次点击
    这是一个创建于 3532 天前的主题,其中的信息可能已经有所发展或是发生改变。

    rt
    我现在想处理一批按照时间排好序的视频文件,如:2015_3_22-6_32_36-0.avi,需要填到excel文件里。我想写个python脚本,实现批量复制文件名即可。需要用到哪个库?请前辈指点。

    18 条回复    2015-03-27 12:44:49 +08:00
    xlvecle
        1
    xlvecle  
       2015-03-25 09:59:31 +08:00
    import os,sys
    icedx
        2
    icedx  
       2015-03-25 09:59:31 +08:00 via Android
    伸手党剁手
    mhycy
        3
    mhycy  
       2015-03-25 09:59:57 +08:00
    内置的就够用了
    sys,os,re
    分别用于浏览文件夹和正则表达式提取
    提出来塞到CSV以后手工处理成excel就好
    量大就再找个Excel读写库
    Septembers
        4
    Septembers  
       2015-03-25 10:01:18 +08:00
    glob
    csv
    xlvecle
        5
    xlvecle  
       2015-03-25 10:01:21 +08:00   ❤️ 1
    刚才没说完,文件名导出来之后直接用excel从txt文件导入就行了,不需要解析xlsx,简单问题复杂化。
    xxer
        6
    xxer  
    OP
       2015-03-25 10:26:32 +08:00
    @icedx 我就是问哪个库,没伸手要代码
    Delbert
        7
    Delbert  
       2015-03-25 10:32:46 +08:00
    import os

    os.listdir()
    cnbeining
        8
    cnbeining  
       2015-03-25 11:45:13 +08:00   ❤️ 1
    import glob
    import os

    os.chdir("DIR_OF_YOUR_FILE")
    xls_list = glob.glob('*.xls')

    然后随便了。
    XuTao
        9
    XuTao  
       2015-03-25 12:42:02 +08:00
    用命令行岂不更快
    vincentxue
        10
    vincentxue  
       2015-03-25 12:45:21 +08:00   ❤️ 1
    如果是 Mac 的话,直接复制文件,粘贴即可。
    xxer
        11
    xxer  
    OP
       2015-03-25 13:38:38 +08:00
    @cnbeining 我试了,不行啊
    sh4n3
        12
    sh4n3  
       2015-03-26 03:33:28 +08:00
    @vincentxue 这个好屌!!!!感谢!
    longestusername
        13
    longestusername  
       2015-03-26 09:45:52 +08:00
    ll *.avi|cut -d. -f 1 > name.txt

    然后打开name.txt复制到excel的一列里面就可以了
    xxer
        14
    xxer  
    OP
       2015-03-26 09:48:43 +08:00
    @longestusername 请问一下,如何通过字符串中的下划线来确定字符位置
    xxer
        15
    xxer  
    OP
       2015-03-26 09:53:03 +08:00
    @longestusername 因为avi文件还对应一条记录的信息,我想找到这条对应的信息,但信息有长有短,我如果切片操作,会漏记或多记,所以只能通过嵌在字符串中的下划线来判断每一位
    xxer
        16
    xxer  
    OP
       2015-03-26 10:10:36 +08:00
    @longestusername 截取特定字符串我刚才google出来了,打扰了,==
    xxer
        17
    xxer  
    OP
       2015-03-26 10:27:45 +08:00
    @cnbeining 可以实现,感谢
    longestusername
        18
    longestusername  
       2015-03-27 12:44:49 +08:00
    @xxer ll *.avi|cut -d_ -f 1 > name.txt

    虽然没大搞明白你的三条回复咋回事。不过-d参数后面字符就是cut的分隔符。 -d.就是把.作为分隔符, -d_就是把_作为分隔符..
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2653 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:36 · PVG 13:36 · LAX 21:36 · JFK 00:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.