Python学习日记(十七) os模块和sys模块
os模块
1.os.getcwd()
获取当前工作目录,即当前python脚本工作的目录路径
import os print(os.getcwd()) #C:\Users\Administrator\PycharmProjects\PYL\temp_file
2.os.chdir()
改变当前脚本工作目录;相当于shell下cd
import os print(os.getcwd()) #C:\Users\Administrator\PycharmProjects\PYL\temp_file os.chdir(r'C:\Users\Administrator\PycharmProjects\PYL') print(os.getcwd()) #C:\Users\Administrator\PycharmProjects\PYL
3.os.makedirs()
用于递归创建目录,内部有两个参数path、mode(权限模式)
import os os.makedirs('dirname1/dirname2/dirname3')
代码执行前:
代码执行后:
4.os.removedirs()
用于递归删除目录,若目录为空则删除,并返回上一层目录,若也为空,也删除,以此类推;如果目录不为空就没有办法删除,程序会报错
import os os.removedirs('dirname1/dirname2/dirname3')
代码执行前:
代码执行后:
5.os.mkdir()
和makedirs()相比只能一级一级的创建目录,默认的权限数字模式是0777(八进制)
import os os.mkdir('dirname1/dirname2')
代码执行前:
代码执行后:
6.os.listdir()
返回指定的文件夹包含的文件或文件夹的名字的列表.这个列表以字母顺序,它不包括'.'和'..'即使它在文件夹中,只支持在Unix,Windows下使用
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.listdir(path)) #['dirname1', 'temp_py.py'] print(os.listdir(r'C:\Users\Administrator\PycharmProjects\PYL\temp_file')) #['dirname1', 'temp_py.py']
7.os.stat()
用于在给定的路径上执行一个系统 stat 的调用
参数:
st_mode: inode 保护模式 st_ino: inode 节点号。 st_dev: inode 驻留的设备。 st_nlink: inode 的链接数。 st_uid: 所有者的用户ID。 st_gid: 所有者的组ID。 st_size: 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。 st_atime: 上次访问的时间。 st_mtime: 最后一次修改的时间。 st_ctime: 由操作系统报告的"ctime"。在某些系统上(如Unix)是最新的元数据更改的时间,在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)。
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file get_path = os.stat(path) print(get_path) #os.stat_result(st_mode=16895, st_ino=51791395714972605, st_dev=2243978906, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1567246056, st_mtime=1567246056, st_ctime=1567058187) get_path2 = os.stat('test.py') print(get_path2) #os.stat_result(st_mode=33206, st_ino=38280596832774340, st_dev=2243978906, st_nlink=1, st_uid=0, st_gid=0, st_size=12, st_atime=1567245950, st_mtime=1567245950, st_ctime=1567245924)
8.os.system()
运行shell命令,直接显示
import os print(os.system('dir')) # ������ C �еľ��� ϵͳ # ������к��� 85C0-669A # # C:\Users\Administrator\PycharmProjects\PYL\temp_file ��Ŀ¼ # # 2019/08/31 22:00 <DIR> . # 2019/08/31 22:00 <DIR> .. # 2019/08/31 17:40 <DIR> dirname1 # 2019/08/31 22:00 34 temp_py.py # 2019/08/31 18:05 12 test.py # 2 ���ļ� 46 �ֽ� # 3 ��Ŀ¼ 45,381,369,856 �����ֽ� # 0
9.os.popen()
运行shell命令,获取执行结果
import os print(os.popen('dir').read()) # 驱动器 C 中的卷是 系统 # 卷的序列号是 85C0-669A # # C:\Users\Administrator\PycharmProjects\PYL\temp_file 的目录 # # 2019/08/31 22:08 <DIR> . # 2019/08/31 22:08 <DIR> .. # 2019/08/31 17:40 <DIR> dirname1 # 2019/08/31 22:04 <DIR> nwdir # 2019/08/31 22:08 40 temp_py.py # 2019/08/31 18:05 12 test.py # 2 个文件 52 字节 # 4 个目录 45,363,744,768 可用字节
10.os.rename()
重命名文件/目录
import os os.rename('old_test.py','new_test.py')
程序执行前:
程序执行后:
11.os.path.getsize()
返回这个路径下的所有文件夹的内容大小
import os path = os.getcwd() path_size = os.path.getsize(path) print(path_size) #4096
12.os.path.abspath()
返回path规范化的绝对路径
import os path = os.getcwd() print(os.path.abspath(path)) #C:\Users\Administrator\PycharmProjects\PYL\temp_file
13.os.path.split()
将path分割成目录和文件名二元组返回
import os path = os.getcwd() print(os.path.split(path)) #('C:\\Users\\Administrator\\PycharmProjects\\PYL', 'temp_file')
14.os.path.dirname()
返回path的目录,其实就是os.path.split(path)的第一个元素
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.dirname(path)) #C:\Users\Administrator\PycharmProjects\PYL
15.os.path.basename()
返回path最后的文件名,如果path以/或\结尾,那么就会返回空值,即os.path.split(path)的第二个元素
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.basename(path)) #temp_file
16.os.path.exists()
如果path存在,返回True;如果path不存在,返回False
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.exists(path)) #True print(os.path.exists(r'C:\Users\Administrator\PycharmProjects\PYL\temp_file2')) #False
17.os.path.isabs()
如果path是绝对路径,返回True
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.isabs(path)) #True print(os.path.isabs(r'.\temp_file')) #False
18.os.path.isfile()
如果path是一个存在的文件,返回True,否则返回False
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.isfile(path)) #False print(os.path.isfile(r'C:\Users\Administrator\PycharmProjects\PYL\temp_file\dirname1\dirname2\temp_py.py')) #True
19.os.path.isdir()
如果path是一个存在的目录,则返回True,否则返回False
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.isdir(path)) #True print(os.path.isdir(r'C:\Users\Administrator\PycharmProjects\PYL\temp_file\dirname1\dirname2\temp_py.py')) #False
20.os.path.isjoin()
将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
import os path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file print(os.path.join(path,r'C:\Users\Administrator\PycharmProjects\PYL\temp_file\new_test.py')) # C:\Users\Administrator\PycharmProjects\PYL\temp_file # C:\Users\Administrator\PycharmProjects\PYL\temp_file\new_test.py
21.os.path.getatime()
返回path所指向的文件或者目录的最后访问时间
import os,time path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file times = os.path.getatime(path) print(times) #1567261823.2424655 print('文件最后访问时间:' + time.asctime(time.localtime(times))) #文件最后访问时间:Sat Aug 31 22:30:23 2019
22.os.path.getmtime()
返回path所指向的文件或者目录的最后修改时间
import os,time path = os.getcwd() print(path) #C:\Users\Administrator\PycharmProjects\PYL\temp_file times = os.path.getmtime(path) print(times) #1567261823.2424655 print('文件最后修改时间:' + time.asctime(time.localtime(times))) #文件最后访问时间:Sat Aug 31 22:30:23 2019
23.os模块的属性
os.sep 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/" os.linesep 输出当前平台使用的行终止符,win下为"\r\n",Linux下为"\n" os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为: os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
sys模块
1.sys.platform
返回操作系统平台名称
import sys print(sys.platform) #win32
2.sys.argv
命令行参数List,第一个元素是程序本身路径
import sys print(sys.argv) #['C:\\Users\\Administrator\\PycharmProjects\\PYL\\temp_file\\dirname1\\dirname2\\temp_py.py']
3.sys.exit(n)
退出程序,正常退出时exit(0),错误退出sys.exit(1)
4.sys.version
获取python解释程序的版本信息
import sys print(sys.version) #3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)]
5.sys.path
返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
import sys print(sys.path) #['C:\\Users\\Administrator\\PycharmProjects\\PYL\\temp_file\\dirname1\\dirname2', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL\\venv\\Scripts\\python37.zip', # 'F:\\Anaconda\\DLLs', # 'F:\\Anaconda\\lib', # 'F:\\Anaconda', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL\\venv', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL\\venv\\lib\\site-packages', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL\\venv\\lib\\site-packages\\setuptools-40.8.0-py3.7.egg', # 'C:\\Users\\Administrator\\PycharmProjects\\PYL\\venv\\lib\\site-packages\\pip-19.0.3-py3.7.egg']
转载于:https://www.cnblogs.com/Fantac/p/11441096.html
Python学习日记(十七) os模块和sys模块相关推荐
- Python学习日记(十四) 正则表达式和re模块
正则表达式: 它是字符串的一种匹配模式,用来处理字符串,可以极大地减轻处理一些复杂字符串的代码量 字符组:它是在同一位置可能出现的各种字符组成了一个字符组,用[]表示,但是它的结果只能是一个数字或者一 ...
- 初学者python笔记(os模块、sys模块)
文章目录 os模块 直接调用的os方法 os.path的相关方法 sys模块 os模块与sys模块看字义就知道是与操作系统有关的,但两个的功能侧重点不一样,前者侧重系统操作,后者侧重窗口的操作. 今天 ...
- python学习日记2-3周
python学习日记2-3周 怠惰怠惰 improt 导入 import phone.apple.iphone6 import phone.apple.iphone7 import phone.sam ...
- [Python学习日记] 文件与文件系统(一)
[Python学习日记] 文件与文件系统(一) 目录 Python3 File(文件) 方法 open() 方法 file 对象 目录 Python3 File(文件) 方法 open() 方法 Py ...
- Python学习日记-day1基础篇 字符 输出 注释
Python学习日记-day1基础篇 字符 输出 注释 by北栀一刺 # -*- coding: utf-8 -*- """ Spyder EditorThis is a ...
- Python学习日记-pandas操作学习
Python学习日记-pandas模块学习 根据需求筛选数据 绘制柱状图-利用pandas绘制 绘制柱状图-利用matplotlib绘制 绘制柱状图-两组数据比较 绘制柱状图-叠加柱状图 绘制饼状图 ...
- 菜菜的Python学习日记 | 正则表达式你必须了解的知识点
系列索引:菜菜的Python学习日记 | Python从入门到入土详解 文章目录 常用规则 Python对正则表达式的支持 常用规则 符号 解释 示例 说明 . 匹配任意字符 b.t 可以匹配bat ...
- python学习日记(第一周)
python学习日记(第一周) 前言: 无论出于什么目的,学个程序语言吧.之前学过一点点基础语法,然后就搁置了两年,日记仅作为个人记录,有问题还望不吝赐教 其实这玩意儿应该每次学一部分记录一部分的,好 ...
- 菜菜的Python学习日记 | Python类实验代码分享
系列索引:菜菜的Python学习日记 | Python从入门到入土详解 Python类实验代码分享 编写程序,实现以下功能. (1)创建员工类Employee,属性有姓名name.能力值ability ...
最新文章
- Win7 wifi热点设置( 转载)
- BurpSuite插件开发指南之 Java 篇
- 使用匿名函数和内嵌函数处理多变量传递问题
- php 升序 排序字符串,PHP asort():对数组排序(升序),并保持索引关系
- 事务例子_Redis事务系列之一Redis事务详解
- java读取C++结构体,类型转换
- 使用Synergy多台电脑共享键盘鼠标和剪贴板
- springboot微服务 java b2b2c电子商务系统(一)服务的注册与发现(Eureka)
- android.os.BinderProxy cannot be cast to
- Axure写PRD:倒推淘票票APP产品需求文档
- Elasticsearch增删改查 之 —— Delete删除
- vb 饼状图显示百分比_Matplotlib-饼图
- 单元测试时使用Ninject的小问题
- 通过ESP32 logging库来启发我们的思维吧~~
- 01互联网三高架构的演进之道
- PHP navicat数据搭建,navicat怎么建表
- java刻画三角形和梯形和圆形_三角形、梯形和圆形的类封装
- 求函数:x的n次方(函数递归)
- 有限元中四面体的一些积分公式
- 美国OFAC发布针对个人的“网络安全相关处罚”规则
热门文章
- Sysinternals---Process Explorer
- 庖丁解牛Linux内核分析 0x00:《庖丁解牛》
- lego_loam——featuerAssociation.cpp
- linux write引起进程挂起,Linux设备驱动中的阻塞与非阻塞总结
- <<English Words>> 看到英语词就懵逼? 还要回想半天? 一篇文章让你牢牢掌握
- 【MySQL】explain 用法详解
- 全覆盖路径规划思想(2)
- spca5xx-LE in S3C2410
- php梗相亲梗,真实、有梗、接地气,看完这档相亲节目你没笑算我输!
- 星神多媒体信息发布系统,助枫杨外国语学校突破传统校园模式