请帮忙!

 收藏

任何人都可以帮助我解决我的问题..我是python的新手!我想创建一个脚本来重命名目录中的文件。该目录有400个文件.png ..从001.png,002.png到400.png开始!我想将它们从000.png开始重命名为399.png ..请帮助!

回复
  • mut 回复

    我只使用pys60 .. Symbian! Python说没有名为glob的模块:(

  • oqui 回复

    最广泛使用的pys60是v1.45,它是python 2.2.2的端口。 pys60 v1.9.7是较少使用的python 2.5端口。 对于pys60,有许多用于处理文件和目录的模块,例如,我可以建议使用pow_light fm模块或fman模块。还有一个pys60的shutil模块。

  • 何必太天真 回复

    如果enumerate()不起作用,则应该升级pyS60版本。 enumerate()是2003年在python 2.3中新增的功能。 如果您不能使用最近10年实现的功能,则很难编写/学习python。

  • pnon 回复

    如果您使用的是Linux,则可以使用bash脚本更简单地进行处理。

  • hculpa 回复

    Meister snippsat的解决方案很简单,但是要小心,它将重命名目录中的任何.png文件。您可能要确保名称至少以整数开头。

  • 哎呀呀o 回复

    我尝试运行上面的代码.. python说的 对于numb,名称为enumerate(os.listdir(“ e:Py”)): NameError:未定义名称“枚举”

  • yeum 回复

    python很简单,这是一个python论坛。 @ crishein14将脚本保存在带有文件的文件夹中并运行。

    import os, glob
    
    for numb,name in enumerate(glob.glob('*png')):
        os.rename(name, '{num:03d}.png'.format(num=numb))
    

  • 巴巴爸爸 回复

    自己实施

    from __future__ import generators # does your python need this ?
    
    def enumerate(iterable, start=0):
        i = start - 1
        for item in iterable:
            i += 1
            yield (i, item)
    

  • zq759423682 回复

    非常感谢你们大家.. im noob in python!我想在python中学习更多..对不起,我的英语不好:)

  • 水晶 回复

    我认为pyS60使用python 2.5.4,然后您必须使用这样的旧字符串格式。 您当然应该在第一篇文章中提到使用pyS60。

    import os
    
    for numb,name in enumerate(os.listdir(".")):
        if name.endswith(".png"):
            os.rename(name, '%03i.png' % numb)
    

  • pullam 回复

    尝试。

    import os
    
    for numb,name in enumerate(os.listdir(".")):
        if name.endswith(".png"):
            os.rename(name, '{num:03d}.png'.format(num=numb))
    

    Or.
    http://people.csail.mit.edu/kapu/symbian/python_old.html

    全局匹配   不属于PyS60发行版的标准Python模块,但进行了一些修改   所以他们可以和PyS60一起使用   Glob允许使用通配符列出目录,glob使用fnmatch。由sync,btconsole使用。

  • 唇齿间的爱 回复

    阅读os模块的文档以找到合适的命令,并使用循环和字符串格式设置零填充数字:

    print('%03i.txt' % 5)
    

    输出:

    005.txt