最新要闻
- 女子误用八千元一斤茶叶煮茶叶蛋 以为过期:网友称这茶叶蛋真吃不起
- 天天观天下!专家:年轻人工资低是因为能力不够 很少有人反思这问题
- 全球微速讯:爱奇艺回应3台设备登录账号被封:改密码能解封 不用充值更贵会员
- 全球滚动:PS游戏启动失败?PS日本教你如何进行问题排查
- 剧版一集就被砍之后 DC电影版《沼泽怪物》物色导演
- 订单破5万!比亚迪腾势D9登35万以上新能源豪华MPV销量第一
- 环球微动态丨导演评价《狂飙》:可能是可以刻在自己墓碑上的一部戏
- 每日快报!12.4万的保时捷带来诸多疑问 故意营销质疑越来越多!
- 造车新势力第一!广汽埃安1月交付10206辆 今年冲击60万辆
- 今日快讯:蔚来开启降价 内部员工回应:像小鹏那样直接降太没面子
- 彻底不冒黑烟!沃尔沃天然气重卡发布:发动机最大500马力
- 世界速讯:30岁中国女子在日本买70万平小岛成岛主:永久使用权
- 天天资讯:体育纳入高考、鲨鱼咬人?朋友圈十大谣言出炉
- 环球速看:800W核弹 老外猜测RTX Titan Ada售价:2.5万元都是良心价
- 环球今日报丨超越三星 中国电视品牌出货量首次登顶全球第一
- 天天看热讯:33款砍掉一半多!奔驰大刀阔斧改革旗下车型:不赚钱的都扔掉
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Python教程:OS与sys模块用法教程
一、Python os模块
包含普遍的操作系统功能,如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。
1、os.access()
查看文件是否有指定权限,有则返回True否则返回flase
os.access(path, mode)
- path:指定文件路径
- mode:参数有F_OK(是否存在),R_OK(可读),W_OK(可写),X_OK(可执行)
>>> os.access("/python/test.py",os.F_OK) #是否存在True>>> os.access("/python/test.py",os.R_OK) #是否可读True>>> os.access("/python/test.py",os.W_OK) #是否可写True>>> os.access("/python/test.py",os.X_OK) #是否可执行False
2、os.chdir()
方法用于改变当前工作目录到指定的路径。
【资料图】
>>> os.getcwd() #查看当前工作路径"/python>>> os.chdir("/root/") #修改当前工作路径到‘/root’>>> os.getcwd()"/root"
3、os.chmod()
方法用于更改文件或目录的权限。
权限指定:
- stat.S_IXOTH: 其他用户有执行权0o001
- stat.S_IWOTH: 其他用户有写权限0o002
- stat.S_IROTH: 其他用户有读权限0o004
- stat.S_IRWXO: 其他用户有全部权限(权限掩码)0o007
- stat.S_IXGRP: 组用户有执行权限0o010
- stat.S_IWGRP: 组用户有写权限0o020
- stat.S_IRGRP: 组用户有读权限0o040
- stat.S_IRWXG: 组用户有全部权限(权限掩码)0o070
- stat.S_IXUSR: 拥有者具有执行权限0o100
- stat.S_IWUSR: 拥有者具有写权限0o200
- stat.S_IRUSR: 拥有者具有读权限0o400
- stat.S_IRWXU: 拥有者有全部权限(权限掩码)0o700
- stat.S_ISVTX: 目录里文件目录只有拥有者才可删除更改0o1000
- stat.S_ISGID: 执行此文件其进程有效组为文件所在组0o2000
- stat.S_ISUID: 执行此文件其进程有效用户为文件所有者0o4000
- stat.S_IREAD: windows下设为只读
- stat.S_IWRITE: windows下取消只读
# ll---------- 1 nobody nobody 167 9月 10 13:43 test.py>>> import stat,os>>> os.chmod("/python/test.py",stat.S_IXOTH) #其他用户有可执行权限[root@python python]# ll test.py ---------x 1 nobody nobody 167 9月 10 13:43 test.py>>> os.chmod("/python/test.py",stat.S_IWOTH) #写权限>>> os.chmod("/python/test.py",stat.S_IROTH) #读权限>>> os.chmod("/python/test.py",stat.S_IRWOT) #全部权限>>> os.chmod("/python/test.py",stat.S_IXGRP) #组用户有执行权限[root@python python]# ll test.py ------x--- 1 nobody nobody 167 9月 10 13:43 test.py#注意修改权限会消除以前的权限,只保留修改的权限>>> os.chmod("/python/test.py",stat.S_IWGRP) #组用户有写权限>>> os.chmod("/python/test.py",stat.S_IRGRP) #组用户有读权限>>> os.chmod("/python/test.py",stat.S_IRWXG) #组用户有所有权限>>> os.chmod("/python/test.py",stat.S_IXUSR) #拥有者有执行权限>>> os.chmod("/python/test.py",stat.S_IWUSR) #拥有者有写权限>>> os.chmod("/python/test.py",stat.S_IRUSR) #拥有者有读权限>>> os.chmod("/python/test.py",stat.S_IRWXU) #拥有者有所有权限[root@python python]# ll test.py -rwx------ 1 nobody nobody 167 9月 10 13:43 test.py
4、os.chown()
方法用于更改文件所有者,如果不修改可以设置为 -1, 你需要超级用户权限来执行权限修改操作。
只支持在 Unix 下使用。
>>> os.chown("/python/test.py",0,0) #设置文件的UID为0,root用户,GID为0,root组[root@python python]# ll test.py -rwx------ 1 root root 167 9月 10 13:43 test.py
5、os.chroot()
方法用于更改当前进程的根目录为指定的目录,使用该函数需要管理员权限。
6、os.close()
方法用于关闭指定的文件描述符 fd。
>>> os.name #判断现在的实用平台,windows返回‘nt’,linux返回"posix">>> os.getcwd() #返回当前工作的目录"/root">>> os.listdir(".") #返回指定目录下所有的文件和目录名["file.txt", "test", "caidan.py", "test.txt", "test.py", "test1.py", "enumerate.py", "login.py"]>>> os.remove("test1.py") #删除指定文件>>> os.listdir(".")["file.txt", "test", "caidan.py", "test.txt", "test.py", "enumerate.py", "login.py"]>>> os.rmdir("aaa") #删除指定目录>>> os.mkdir("directory") #创建目录,只能创建一层目录>>>os.path.isfile()——判断指定对象是否为文件。是返回True,否则False>>> os.path.isfile("test.py") #为文件返回TrueTrue>>> os.path.isfile("directory") #此为目录则返回falseFalse>>> os.path.isdir("directory") #判断指定对象是否为目录。True>>> os.path.exists("/python/test.py") #判断指定的对象是否存在True>>> os.path.exists("/python/caidan")False>>> os.path.split("/python/test.py") #返回路径的目录和文件名("/python", "test.py")>>> os.getcwd() #获取当前工作的目录"/python">>> os.system("pwd") #执行shell命令/python0>>> os.system("echo "hello world!"")hello world!0>>> os.path.getsize("directory") #获得文件的大小,如果为目录返回04096>>> os.path.abspath(".") #获得绝对路径"/python">>> os.path.join("/python/directory/","test.py") #链接目录和文件名"/python/directory/test.py">>> os.path.basename("/python/directory/test.py") #返回文件名"test.py">>> os.path.basename("/python/directory")"directory">>> os.path.dirname("/root/directory/test.py") #返回文件路径"/root/directory">>> os.path.getmtime(".") #返回在此path下最后一次修改的时间戳1510553280.2887046
二、sys模块
提供了一系列有关Python运行环境的变量和函数
sys.argv命令行参数List,第一个元素是程序本身路径
import sys#sys.argv[0] 获取脚本名#sys.argv[1] 获取第一个参数print("脚本名称:{}".format(sys.argv[0]))for i in sys.argv: if i == sys.argv[0]: continue print("参数为:",i) print("总参数个数:{}".format(len(sys.argv)-1)[root@python python]# ./sysargv.py s1 s2 s3 s4 s5脚本名称:./sysargv.py参数为: s1参数为: s2参数为: s3参数为: s4参数为: s5总参数个数:5
sys.modules.keys() 返回所有已经导入的模块列表
"""学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:711312441寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!""">>> import sys>>> sys.modules.keys()dict_keys(["_sysconfigdata", "posixpath", "rlcompleter", "stat", "encodings.latin_1", "atexit", "io", "zipimport", "_codecs", "_frozen_importlib_external", "sys", "_weakrefset", "_sitebuiltins", "_warnings", "marshal", "os", "genericpath", "encodings", "abc", "codecs", "_imp", "_frozen_importlib", "os.path", "_weakref", "_collections_abc", "readline", "encodings.aliases", "errno", "_io", "site", "_signal", "builtins", "sysconfig", "encodings.utf_8", "__main__", "_stat", "posix", "_thread"])
sys.exc_info() 获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息
>>> sys.exc_info()(None, None, None)
sys.exit(n) 退出程序,正常退出时exit(0)
>>> sys.exit()
sys.hexversion 获取Python解释程序的版本值,16进制格式如:0x020403F0
>>> import sys>>> sys.hexversion50660592
sys.version 获取Python解释程序的版本信息
>>> sys.version"3.5.4 (default, Sep 22 2017, 10:57:08) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)]"
sys.maxsize 最大的Int值
>>> sys.maxsize9223372036854775807
sys.maxunicode 最大的Unicode值
>>> sys.maxunicode1114111
sys.modules 返回系统导入的模块字段,key是模块名,value是模块
>>> sys.modules{"encodings.latin_1": , "io": , "builtins": , "_sitebuiltins": , "zipimport": , "encodings": , "re": , "stat": , "_imp": , "_codecs": , "_frozen_importlib": , "encodings.aliases": , "abc": , "genericpath": , "_warnings": , "sysconfig": , "os": , "sre_compile": , "marshal": , "readline": , "_sysconfigdata": , "copyreg": , "_sre": , "sys": , "_weakref": , "_thread": , "_signal": , "_locale": , "rlcompleter": , "_io": , "errno": , "sre_constants": , "os.path": , "encodings.utf_8": , "posixpath": , "_weakrefset": , "site": , "_stat": , "atexit": , "_collections_abc": , "posix": , "sre_parse": , "__main__": , "codecs": , "_frozen_importlib_external": }
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
>>> sys.path["", "/usr/local/python35/lib/python35.zip", "/usr/local/python35/lib/python3.5", "/usr/local/python35/lib/python3.5/plat-linux", "/usr/local/python35/lib/python3.5/lib-dynload", "/usr/local/python35/lib/python3.5/site-packages"]
sys.platform 返回操作系统平台名称
>>> sys.platform"linux"
sys.stdout 标准输出
#!/usr/bin/env python35import sysf = open("log.txt","a") #以追加的模式打开一个文件__console__ = sys.stdout #备份默认console命令行sys.stdout = f #指定标准输出到文件print("hello python")sys.stdout = __console__ #将标准输出改为模式的console命令行模式print("hello world") #输出将会在console命令行下[root@python python]# python35 stdout.py hello world[root@python python]# cat log.txt hello python
sys.stderr 错误输出
sys.exc_info() 返回当前捕获的异常信息
sys.exec_prefix 返回平台独立的python文件安装的位置
>>> sys.exec_prefix"/usr/local/python35"
sys.byteorder 本地字节规则的指示器,big-endian平台的值是"big",little-endian平台的值是"little"
>>> sys.byteorder"little"
sys.copyright 记录python版权相关的东西
>>> sys.copyright"Copyright (c) 2001-2017 Python Software Foundation.\nAll Rights Reserved.\n\nCopyright (c) 2000 BeOpen.com.\nAll Rights Reserved.\n\nCopyright (c) 1995-2001 Corporation for National Research Initiatives.\nAll Rights Reserved.\n\nCopyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.\nAll Rights Reserved."
sys.api_version 解释器的C的API版本
>>> sys.api_version1013
-
世界看点:mybatis-plus代码生成器
用idea建一个javaproject项目,然后在pom xml中加入以下依赖<dependency><groupId>org projectlombok< gro
来源: Python教程:OS与sys模块用法教程
世界看点:mybatis-plus代码生成器
女子误用八千元一斤茶叶煮茶叶蛋 以为过期:网友称这茶叶蛋真吃不起
天天观天下!专家:年轻人工资低是因为能力不够 很少有人反思这问题
全球微速讯:爱奇艺回应3台设备登录账号被封:改密码能解封 不用充值更贵会员
全球滚动:PS游戏启动失败?PS日本教你如何进行问题排查
剧版一集就被砍之后 DC电影版《沼泽怪物》物色导演
订单破5万!比亚迪腾势D9登35万以上新能源豪华MPV销量第一
环球微动态丨导演评价《狂飙》:可能是可以刻在自己墓碑上的一部戏
每日快报!12.4万的保时捷带来诸多疑问 故意营销质疑越来越多!
造车新势力第一!广汽埃安1月交付10206辆 今年冲击60万辆
天天观热点:CSS 清除浮动
今日快讯:蔚来开启降价 内部员工回应:像小鹏那样直接降太没面子
彻底不冒黑烟!沃尔沃天然气重卡发布:发动机最大500马力
世界速讯:30岁中国女子在日本买70万平小岛成岛主:永久使用权
天天资讯:体育纳入高考、鲨鱼咬人?朋友圈十大谣言出炉
环球速看:800W核弹 老外猜测RTX Titan Ada售价:2.5万元都是良心价
每日信息:程序员应该专注技术,还是优雅转管理?
环球今日报丨超越三星 中国电视品牌出货量首次登顶全球第一
天天看热讯:33款砍掉一半多!奔驰大刀阔斧改革旗下车型:不赚钱的都扔掉
环球短讯!上海动物园小老虎意外溺亡 回应:因外界人员干扰致应激反应
河南一地发现大型石墨矿:自然界最软的矿物 估算超100万吨
95比92更耐烧吗、中石化和中石油能混加吗?官方科普
当前焦点![JavaSript]闭包
即时焦点:element-ui表格展开行每次只能展开一行
阿里二面:千万级、亿级数据,如何性能优化? 教科书级 答案来了
热推荐:MyBatis的使用一(框架的搭建)
环球要闻:数字孪生|可视化图表之散点图
焦点报道:视网膜能秒击穿!网友用小米12实测新能源车激光雷达威力:相机被烧坏
天天速讯:可口可乐定制版真我10 Pro外观首曝:最具辨识度的千元机
世界滚动:《狂飙》落幕后 《三体》剧版上线超前点播:18元提前看大结局
安卓之光归来 三星对Galaxy S23系列很自信:最好的相机及游戏性能
世界今日报丨小米汽车设计泄密供应商被处罚100万!雷军:泄密员工正在处理
自动化运维:如何构建和部署前端应用
cpp简单总结
你只会用 xxl-job?一款更强大、新一代分布式任务调度框架来了,太强大了!
微动态丨可口可乐定制版真我10 Pro官宣:LCD屏 边框比iPhone 14 Pro还窄
天天快资讯丨英特尔锐炫显卡驱动更新:DirectX 9游戏性能提升超过40%
环球速递!连赢友商两代的CPU功臣退位 AMD确认5nm Zen4今年成为主力
【天天热闻】吃鱼或将再也不用挑刺了!中国科学家取得新突破:基因突变搞定
《狂飙》大结局口碑崩了!豆瓣评分跌至8.8:网友吐槽结尾仓促
多功能游戏工具箱 - Watt Toolkit V4.4
每日视讯:IOS逆向--恢复Dyld的内存加载方式
世界快讯:智能学习灯赛道竞争日趋激烈 火山引擎 VeDI 用数据技术助力打造新优势
全球微资讯!Java里面为什么搞了双重检查锁,写完这篇文章终于真相大白了
抄袭、偷票房、成本1千万争端不断!张艺谋:《满江红》是正能量传承
网易暴雪游戏退款服务爆火!排队人数超100万 你退了多少?
恒大恒驰上海公司被强执409万:累计被执行2.8亿
天天热头条丨微信多开工具,微信消息防撤回、QQ消息防撤回、Tim消息防撤回,不错过每一条消息
京东PLUS会员与爱奇艺、喜马拉雅联名卡宣布调价:都涨了
视焦点讯!能怎样?韩数万用户上诉苹果:故意降低旧款iPhone性能让换新败诉
每日观察!马斯克测试推特“仅粉丝可见”遭群嘲:懂的工程师都被裁了?
每日消息!董明珠造车路又遭一击!海南三亚67辆格力钛新能源大巴起火被烧
焦点简讯:限制480P投屏被7年老粉起诉:律师称爱奇艺大概率会败诉
网友囤1000片退烧药全砸手里了被点赞:囤N95口罩血氧仪价格也都惨了
iPhone反复输错密码 Apple ID锁定怎么办?苹果解答
当前播报:比特斯拉还狠!蔚来被曝降价促销 降幅最高超过10万元
环球新动态:刚上班三天就被裁。。还有谁!!
对话 BitSail Contributor | 梁奋杰:保持耐心,享受创造
当前视点!云原生场景下实现编译加速
【北斗七星】北斗卫星授时之星解读与应用
全球速看:kubernetes 污点(Taint)和容忍度(Toleration)研究
完胜iPhone 14 Pro Max!一加Ace 2连续滑动10万次:没有1次断触
天天快资讯丨河北90后小伙做叶雕月入过万 一张“树叶”售价120元
天天微头条丨米哈游起诉《原神》内鬼泄密 获赔15000元
世界观天下!小米汽车设计文件意外泄密被疯传!小米通报:供应商被罚100万
批判主义的观点是什么?批判主义的代表人物有哪些?
什么是平稳序列?平稳序列的三个条件是什么?
imovie怎么添加音乐?imovie怎么调整视频画面大小?
怎么制作电子图章?图章制作软件有哪些?
罹难怎么读?罹难是什么意思?
平板电视和液晶电视有什么区别?平板电视哪个牌子质量好?
ctrl键无响应是什么原因?ctrl键无响应怎么办?
怎么用电脑打电话?电脑打电话没声音是怎么回事?
手机进水了怎么处理比较好?手机进水了放什么歌可以把水震出来?
csv文件用什么打开?csv文件打开乱码的解决方法
环球快消息!将Windows系统设置为NTP服务器
全球快看:38999元 雷蛇灵刃18游戏本上架:13代i9+RTX 4090
世界球精选!《雷霆沙赞:众神之怒》国内定档3月17日:与北美同步上映
李书福是懂借壳上市的 吉利旗下跑车“路特斯”赴美上市
女子手机不慎落入西湖 “打捞神器”只用30秒捞出
可惜了!《泰坦陨落》还有未公布的单机版游戏 现已被EA砍掉
vmware时间不同步问题
全球热讯:真爱粉!网友凌晨4点花1万多下单三星Galaxy S23 Ultra:直言“早买早享受”
【当前独家】比亚迪元PLUS夺得极寒续航达率成第一 城市高达74.2%
当前短讯!鱼跃血氧仪涨价131%被罚270万!消费者能退差价?客服回应
实时焦点:连点五次才能关:微软全屏通知强推Win11
3D模型 | 回旋火箭弹乐园教程之火箭 有手就会的火箭弹教程,超详细>>
环球快讯:读Java8函数式编程笔记08_测试、调试和重构
世界滚动:18英寸大屏+RTX 40系显卡!ROG枪神7 Plus超竞版图赏
车主注意!明天油价又要调整 加满一箱油可能多花11元
天天新消息丨万元机皇!三星Galaxy S23 Ultra真机图赏
一度濒临破产倒闭!李书福4亿救活的跑车公司:作价364亿上市
Meta搞元宇宙太烧钱 一年亏掉900多亿 CEO被炮轰搞垮公司
三星Galaxy S23/S23+/S23 Ultra有何区别?一文了解
韩国1500年历史的木简刻有生僻汉字引围观:画面让国内网友看尬
世界快资讯丨iPhone 15 Ultra/16 Ultra独占潜望长焦:Pro版本也不香了
环球微动态丨QPython实例02-调用其他app实例
精彩看点:[数据结构] 哈夫曼树
当前最新:路由react-router-dom的使用