os.rename()找不到指定的文件

时间:2019-01-05 06:48:31

标签: python

我正在使用此脚本重命名USB驱动器中的文件,但我的src变量无法正常工作

我尝试从src中删除“ E:\ SC-102818”,但它永远无法正常工作

import os

def main():
    i = 0

    for filename in os.listdir("E:\SC-102818"):
        dst ="SCF" + str(i) + ".jpg"
        src ='E:\SC-102818' + filename

        os.rename(src, dst)
        i += 1

if __name__ == '__main__':

    main()

我希望它可以正常执行,但是会弹出FileNotFoundError。当我查看它时,它正在搜索的文件的开始部分的前面是E:\ SC-102818。

1 个答案:

答案 0 :(得分:0)

只需将src = 'E:\SC-102818' + filename更改为src = r'E:\SC-102818\' + filename,就需要转义反斜杠,以便将字符串转换为原始字符串。文件名之前也需要加一个斜杠,以便它可以显示为目录SC-102818的文件。当前输出改为SC-102818filename而不是SC-102818 \ filename。

dst也需要更改,否则文件将被移动到当前目录。这可以与您对srcdst = r'E:\SC-102818\' + "SCF" + str(i) + ".jpg"

进行的操作类似