繁体   English   中英

os.rename失败,显示为[Errno 2]无此文件或目录

[英]os.rename fail with [Errno 2] No such file or directory

在python中使用os.rename并获取“ [Errno 2]没有这样的文件或目录”

完整代码:

import os
from string import digits # digits are one of 0123456789

path = "/Users/xxx/Documents/version-control/secret-msg/prank/"
l = os.listdir(path) # returns list of files in folder
for o in l: #o for 'original'
    c = o.lstrip(digits) # c for 'clean', without leading digits; lstrip = left strip - so left strip any digit
    if (o != c):
        os.rename (o, c) #rename original filename to clean one
        print o + '-> ' + c # for debug only

listdir返回不带路径的文件列表

因此,您应该执行以下操作:

import os
import os.path
from string import digits # digits are one of 0123456789

path = "/Users/xxx/Documents/version-control/secret-msg/prank/"
l = os.listdir(path) # returns list of files in folder
for o in l: #o for 'original'
    c = o.lstrip(digits) # c for 'clean', without leading digits; lstrip = left strip - so left strip any digit
    if (o != c):
        os.rename (os.path.join(path, o),
                   os.path.join(path, c) #rename original filename to clean one
        print o + '-> ' + c # for debug only

我们使用os.path.join将路径连接到文件名。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM