最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)文件只讀屬性的設(shè)置與取消

 更新時間:2023年07月17日 16:50:00   作者:Commas.KM  
這篇文章主要為大家詳細介紹了Python如何實現(xiàn)設(shè)置文件只讀與取消文件只讀的功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下

一、使用os.chmod來設(shè)置文件只讀屬性

我們可以使用 os 模塊中的chmod(全程:change mode)來設(shè)置或取消文件的只讀屬性。

完整語法:

def chmod(path: FileDescriptorOrPath, mode: int,*, dir_fd: int | None = None, follow_symlinks: bool = True) -> None: ...

常見語法:

def chmod(path: FileDescriptorOrPath, mode: int)
  • path:需要修改只讀屬性的文件路徑或目錄路徑;
  • mode:權(quán)限代碼,由八進制數(shù)字(octat)組成。如0o444表示只讀的權(quán)限,0o666表示“讀寫”的權(quán)限,0o777表示讀寫執(zhí)行的權(quán)限等等。

使用方法:

  • 引入os模塊;
  • 使用os.chmod()方法去設(shè)置或取消文件的只讀屬性;
  • 將文件路徑和權(quán)限代碼傳遞os.chmod()方法

示例如下:

import os
# set file as read-only
# 4 = read(4)
os.chmod('readonly.txt', 0o444)
# cancel read-only property
# 6 = read(4) + write(2)
os.chmod('readonly.txt', 0o666)
# set file as read-write-execute
# 7 = read(4) + write(2) + execute(1)
os.chmod('readonly.txt', 0o777)

當(dāng)然,您也可以這樣寫:

import os,stat
# (1)set file as read-only
# 4 = read(4)
# os.chmod('readonly.txt', 0o444)
os.chmod('readonly.txt', stat.S_IRUSR + stat.S_IRGRP + stat.S_IROTH)
# (2)cancel read-only property
# 6 = read(4) + write(2)
# os.chmod('readonly.txt', 0o666)
os.chmod('readonly.txt', stat.S_IWUSR + stat.S_IRUSR + stat.S_IWGRP + stat.S_IRGRP + stat.S_IWOTH + stat.S_IROTH)
# (3)set file as read-write-execute
# 7 = read(4) + write(2) + execute(1)
# os.chmod('readonly.txt', 0o777)
os.chmod('readonly.txt', stat.S_IXUSR + stat.S_IWUSR + stat.S_IRUSR + stat.S_IXGRP + stat.S_IWGRP + stat.S_IRGRP + stat.S_IXOTH + stat.S_IWOTH + stat.S_IROTH)
# 或
os.chmod('readonly.txt', stat.S_IRWXU + stat.S_IRWXG + stat.S_IRWXO)
# 我們可以打印出來看看
# 0o444
print(oct(stat.S_IRUSR + stat.S_IRGRP + stat.S_IROTH))
# 0o666
print(oct(stat.S_IWUSR + stat.S_IRUSR + stat.S_IWGRP + stat.S_IRGRP + stat.S_IWOTH + stat.S_IROTH))
# 0o777
print(oct(stat.S_IXUSR + stat.S_IWUSR + stat.S_IRUSR + stat.S_IXGRP + stat.S_IWGRP + stat.S_IRGRP + stat.S_IXOTH + stat.S_IWOTH + stat.S_IROTH))
print(oct(stat.S_IRWXU + stat.S_IRWXG + stat.S_IRWXO))

結(jié)果輸出:

0o444
0o666
0o777
0o777

二、關(guān)于權(quán)限代碼mode的解讀

如上圖所示,文件調(diào)用權(quán)限分為三級 :

  • 文件所有者(Owner/Users)
  • 用戶組用戶(Group Users)
  • 其它用戶(Other Users)

其中,每級權(quán)限代碼范圍:1~7。

符號含義:

  • R:讀,Read的縮寫,八進制值為 4;
  • W:寫,Write的縮寫,八進制值為 2;
  • X:執(zhí)行,Execute的縮寫,八進制值為 1;

如:0o444表示只讀的權(quán)限,0o666表示“讀寫”的權(quán)限,0o777表示讀寫執(zhí)行的權(quán)限等等;

文件所有者(User)的權(quán)限:

限代碼英文名說明
stat.S_IXUSRExecute User擁有者具有執(zhí)行權(quán)限0o100
stat.S_IWUSRWrite User擁有者具有寫權(quán)限0o200
stat.S_IRUSRRead User擁有者具有讀權(quán)限0o400
stat.S_IRWXURead Write Execute User擁有者有全部權(quán)限(權(quán)限掩碼)0o700

文件用戶組(Group)的權(quán)限:

權(quán)限代碼英文名說明
stat.S_IXGRPExecute Group組用戶有執(zhí)行權(quán)限0o010
stat.S_IWGRPWrite Group組用戶有寫權(quán)限0o020
stat.S_IRGRPRead Group組用戶有讀權(quán)限0o040
stat.S_IRWXGRead Write Execute Group組用戶有全部權(quán)限(權(quán)限掩碼)0o070

其它:

權(quán)限代碼說明
stat.S_ISVTX目錄里文件目錄只有擁有者才可刪除更改0o1000
stat.S_ISGID執(zhí)行此文件其進程有效組為文件所在組0o2000
stat.S_ISUID執(zhí)行此文件其進程有效用戶為文件所有者0o4000
stat.S_IREADwindows下設(shè)為只讀
stat.S_IWRITEwindows下取消只讀

到此這篇關(guān)于Python實現(xiàn)文件只讀屬性的設(shè)置與取消的文章就介紹到這了,更多相關(guān)Python文件只讀內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用python快速生成nodejs項目文件結(jié)構(gòu)

    使用python快速生成nodejs項目文件結(jié)構(gòu)

    這篇文章主要介紹了如何使用Python快速生成nodejs項目文件結(jié)構(gòu),主要是為了解決AI Studio生成的Node.js程序的存放文件夾并快速生成問題的工具軟件,有需要的可以了解下
    2026-01-01
  • python對一個數(shù)向上取整的實例方法

    python對一個數(shù)向上取整的實例方法

    在本篇文章中小編給大家整理了關(guān)于python對一個數(shù)向上取整的實例方法,需要的朋友們可以跟著學(xué)習(xí)下。
    2020-06-06
  • Python讀取Excel的方法實例分析

    Python讀取Excel的方法實例分析

    這篇文章主要介紹了Python讀取Excel的方法,實例分析了Python操作Excel文件的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下
    2015-07-07
  • 使用python為mysql實現(xiàn)restful接口

    使用python為mysql實現(xiàn)restful接口

    這篇文章主要介紹了使用python為mysql實現(xiàn)restful接口的相關(guān)資料,需要的朋友可以參考下
    2018-01-01
  • Python?reflect單例模式反射各個函數(shù)

    Python?reflect單例模式反射各個函數(shù)

    這篇文章主要介紹了Python?reflect單例模式反射各個函數(shù),文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值需要的小伙伴可以參考一下
    2022-06-06
  • 對Tensorflow中Device實例的生成和管理詳解

    對Tensorflow中Device實例的生成和管理詳解

    今天小編就為大家分享一篇對Tensorflow中Device實例的生成和管理詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python進度條可視化之監(jiān)測程序運行速度

    Python進度條可視化之監(jiān)測程序運行速度

    Tqdm是一個快速,可擴展的Python進度條,可以在Python長循環(huán)中添加一個進度提示信息,用戶只需要封裝任意的迭代器即可。本文就主要介紹了通過進度條檢測程序運行速度,感興趣的同學(xué)可以學(xué)習(xí)一下
    2021-12-12
  • Python爬蟲eval實現(xiàn)看漫畫漫畫柜mhgui實戰(zhàn)分析

    Python爬蟲eval實現(xiàn)看漫畫漫畫柜mhgui實戰(zhàn)分析

    這篇文章主要為大家介紹了Python爬蟲eval實現(xiàn)看漫畫漫畫柜mhgui實戰(zhàn)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 使用Python except捕獲所有異常的使用場景

    使用Python except捕獲所有異常的使用場景

    在Python編程中,異常處理是保證程序健壯性的核心機制之一,通過try-except結(jié)構(gòu),開發(fā)者可以優(yōu)雅地處理運行時錯誤,避免程序因意外中斷而崩潰,其中,except捕獲所有異常的寫法在特定場景下被頻繁使用,本文將深入探討其適用場景與注意事項,需要的朋友可以參考下
    2026-06-06
  • Python列表reverse()函數(shù)使用方法詳解

    Python列表reverse()函數(shù)使用方法詳解

    這篇文章主要詳細介紹了Python列表reverse()函數(shù)使用方法,文章通過代碼示例講解的非常詳細,對我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-07-07

最新評論

永仁县| 道真| 馆陶县| 东兴市| 维西| 本溪市| 龙里县| 大名县| 凌云县| 镇康县| 镇远县| 新乡市| 金沙县| 神池县| 鄂托克前旗| 九台市| 永年县| 石家庄市| 宜阳县| 郓城县| 日照市| 成安县| 子洲县| 会宁县| 呼玛县| 丰台区| 临夏市| 曲沃县| 卓尼县| 海南省| 丹凤县| 射洪县| 濉溪县| 睢宁县| 贺兰县| 弥勒县| 兴业县| 达拉特旗| 西畴县| 余干县| 新建县|