AttributeError的:“nt.stat_result”对象有没有属性“S_IWRITE”(

2019-10-16 21:12发布

我想删除的文件。 我检查日期和删除,如果是年纪比我想要的。 我注意到一个.zip文件是不删除。 它不仅是阅读,所以在一个位的测试代码,我用了os.chmod(路径,stat.S_IWRITE),然后os.remove(路径)和它的工作。 我把这个代码到我的主要代码,并得到了错误。 我导入操作系统和统计模块两个。

下面是测试代码的作品,但是当我把这个变成更大的代码中,我得到了错误和完整的代码,这只是一个高清以及:

AttributeError的:“nt.stat_result”对象有没有属性“S_IWRITE”

我已经检查了dpath和dayscount逝去日子的路径和数量。

import os, stat

def del_file(dpath, dayscount):
    if dayscount > 10:
        if dpath[-4:]== ".zip":
            os.chmod(dpath,stat.S_IWRITE)
            os.remove(dpath)
        else:
            os.remove(dpath)
    else:
        print "File is Good"

dpath = "C:\Workspace\Test_Data.zip"
dayscount = 15
del_file(dpath, dayscount)

阅读在这里后,我找到了一个链接: 代码此页面上即显示导入模块的一些例子。 回答说,导入模块中的功能。 我想这对我的主代码和它的工作。

主代码导入操作系统和stat在代码的顶部,但这个功能似乎并没有看到它。 而且我不知道为什么。 当我将其导入模块,则再看到它。 因此,把在主代码中,我不得不进口添加到模块时,见下文。

import os, stat

def test_date():
Code for this function

def get_month():
Code for this function

def del_file(dpath, dayscount):
    import os, stat
    print dpath
    print dayscount
    if dayscount > 10:
        if dpath[-4:]== ".zip":
            os.chmod(dpath,stat.S_IWRITE)
            #os.remove(dpath)
        else:
            os.remove(dpath)
    else:
        print "File is Good"

dpath = "C:\Workspace\Test_Data.zip"
dayscount = 13
del_file(dpath, dayscount)

Answer 1:

要设置一个变量名stat代码中的某个地方(到的结果os.stat调用)。 这个变量掩盖了统计模块。

搜索stat =和变量重命名为其他名称,如stat_result



文章来源: AttributeError: 'nt.stat_result' object has no attribute 'S_IWRITE'