叼辣条闯世界 发表于 2021-4-23 22:24:40

遍历文件

要求:写一段代码,遍历该文件夹里所有的文件,并且将文件重命名
如果遇到文件夹,则进入文件夹,继续执行该操作,如果改文件夹遍历完,就返回上一层目录,继续重命名

yuxijian2020 发表于 2021-4-24 01:36:19

递归 + os

叼辣条闯世界 发表于 2021-4-24 09:07:11

yuxijian2020 发表于 2021-4-24 01:36
递归 + os

具体点{:10_286:}

suchocolate 发表于 2021-4-24 10:00:43

本帖最后由 suchocolate 于 2021-4-24 11:03 编辑

用os或os+shutil就行,递归只是教学用途,实际开销性能消耗大,很少用。import os


def main():
    newname = 1   # 不知道你的命名规则是什么,你可以根据自己的需求改
    # d = input('请输入要遍历的文件夹:')
    d = 'test'
    for root, dirs, files in os.walk(d):   # os.walk能遍历全部文件夹和文件,不需要考虑跳转层次。遍历时root是文件路径,files是其中所有文件组成的列表。详情help(os.walk)
      for file in files:       # 遍历各个文件,改名
            print(f'{root}\\{file}')# print看下就知道了
            os.rename(f'{root}\\{file}', f'{root}\\{newname}.txt')   # 改名时可以用os.rename,也可以用shutil的move方法,这个看喜好。
            newname += 1


if __name__ == '__main__':
    main()
页: [1]
查看完整版本: 遍历文件