python代码如何判断windows文件是否为只读?

2021-03-02 11:01发布

将windows文件设为只读后,用open会报错 PermissionError: [Errno 13] Permission denied是否有判断windows文件权限的方法?linux下好像有o...

将windows文件设为只读后,用open会报错 "PermissionError: [Errno 13] Permission denied"

是否有判断windows文件权限的方法?

linux下好像有os.access

windows下不知道


6条回答
一碗馄饨皮儿
2楼 · 2021-03-02 15:40

def is_only_read(file_name):

    try:

        with open(file_name, "r+") as fr:

            return False

    except IOError as e:

        if "[Errno 13] Permission denied" in str(e):

            return True

        else:

            print(str(e))

            return False


我想吃肉
3楼 · 2021-03-02 16:37

Delphi/Pascal code?

1
2
FileGetAttr:获取属性
FileSetAttr:设置属性


思禹小姐姐y
4楼 · 2021-03-03 09:12

可以通过 OS 模块的 stat 方法来判断, os.stat("文件路径") 这个方法可以得到文件的状态信息

是一个元组, 里面有九个元素, 其中第一个元素就是文件的权限信息

而 权限代码为 33060 的就是只读文件


元则清
5楼 · 2021-03-03 18:47

通过 OS 模块的 stat 方法来判断, os.stat("文件路径") 这个方法可以得到文件的状态信息

是一个元组, 里面有九个元素,

帅帅马
6楼 · 2021-03-04 16:24

def is_only_read(file_name):

    try:

        with open(file_name, "r+") as fr:

            return False

    except IOError as e:

        if "[Errno 13] Permission denied" in str(e):

            return True

        else:

            print(str(e))

            return False


是年糕麻麻啊
7楼 · 2021-03-08 09:33

可以通过 OS 模块的 stat 方法来判断, os.stat("文件路径") 这个方法可以得到文件的状态信息

是一个元组, 里面有九个元素, 其中第一个元素就是文件的权限信息

而 权限代码为 33060 的就是只读文件