Python 入门之 内置模块 -- os模块

1、os os是和操作系统做交互,给操作发指令

os模块是与操作系统交互的一个接口,它提供的功能多与工作目录,路径,文件等相关

(1)工作路径

print(os.getcwd())  # 获取当前文件工作的路径     ***
os.chdir("D:\Python_s25\day16") # 路径切换 **
print(os.getcwd())
print(os.curdir) #返回当前目录: ('.')
print(os.pardir) #获取当前目录的父目录字符串名:('..')

(2)文件夹

os.mkdir("a2")  # 创建文件夹
os.rmdir("a2") # 删除文件夹
os.makedirs('a1/a2/a3') # 递归创建文件夹
os.removedirs("a1/a2/a3") # 递归删除文件夹
print(os.listdir(r"D:\Python_s25\day17")) # 查看当前文件下所有的内容

(3)文件

os.remove(r"D:\Python_s25\day17\a")      #删除文件,彻底删除 找不回来
os.rename() # 重命名 os.stat('path/filename') # 获取文件/目录信息

(4)路径

print(os.path.abspath("test"))   # 返回的是绝对路径
print(os.path.split(r"D:\Python_s25\day17\test")) #将路径分割成一个路径和一个文件名
print(os.path.dirname(r"D:\Python_s25\day17\test")) #获取到父目录
print(os.path.basename(r"D:\Python_s25\day17\test")) #获取文件名
print(os.path.join("D:\Python","day17","test")) # 路径拼接 (非常重要)
os.path.exists(path) # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) # 如果path是绝对路径,返回True
os.path.isfile(path) # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) # 如果path是一个存在的目录,则返回True。否则返回False
os.path.getatime(path) # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) # 返回path的大小

(5)判断

print(os.path.exists(r"D:\Python_s25\day17\blog"))  # 判断当前路劲是否存在
print(os.path.isabs(r"D:\Python_s26\day17\blog")) # 判断是不是绝对路径
print(os.path.isdir(r"D:\Python_s25\day17\blog")) # 判断是不是文件夹
print(os.path.isfile(r"D:\Python_s25\day17\blog")) # 判断是不是文件 print(os.path.getsize(r"D:\Python_s25\day17\01 今日内容.py")) # 获取文件大小
print(os.path.getsize(r"D:\Python_s25")) # 获取文件大小

(6)操作系统相关

os.sep    # 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep # 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep # 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
# 和执行系统命令相关
os.system("bash command") # 运行shell命令,直接显示
os.popen("bash command").read() # 运行shell命令,获取执行结果
os.environ # 获取系统环境变量

(7)os.stat('path/filename') 获取文件/目录信息 的结构说明

# 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)是创建时间(详细信息参见平台的文档)

Python 入门之 内置模块 -- os模块的更多相关文章

  1. Python 入门之 内置模块 --logging模块

    Python 入门之 内置模块 --logging模块 1.logging -- 日志 (1)日志的作用: <1> 记录用户信息 <2> 记录个人流水 <3> 记录 ...

  2. Python 入门之 内置模块 -- re模块

    Python 入门之 内置模块 -- re模块 1.re 模块 (1)什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类 ...

  3. Python 入门之 内置模块 -- collections模块

    Python 入门之 内置模块 -- collections模块 1.collections -- 基于Python自带的数据类型之上额外增加的几个数据类型 from collections ​ 在内 ...

  4. Python 入门之 内置模块 -- hashlib模块

    Python 入门之 内置模块 -- hashlib模块 1.hashlib 摘要算法,加密算法 (1)主要用途: <1> 加密 : md5 sha1 sha256 sha512 md5, ...

  5. Python 入门之 内置模块 -- sys模块

    Python 入门之 内置模块 -- sys模块 1.sys模块 sys模块是与python解释器交互的一个接口 print(sys.path) #模块查找的顺序 print(sys.argv) # ...

  6. Python 入门之 内置模块 -- 序列化模块(json模块、pickle模块)

    Python 入门之 内置模块 -- 序列化模块(json模块.pickle模块) 1.序列化 Python中这种序列化模块有三种: ​ json模块 : ​ 不同语言都遵循的一种数据转化格式,即不同 ...

  7. Python 入门之 内置模块 -- random模块

    Python 入门之 内置模块 -- random模块 1.random模块 import random # random -- 随机数 (1)选择1-50之间随机的整数 print(random.r ...

  8. Python 入门之 内置模块 -- datetime模块

    Python 入门之 内置模块 -- datetime模块 1.datetime模块 from datetime import datetime (1)datetime.now() 获取当前时间和日期 ...

  9. Python 入门之 内置模块 -- time模块

    Python 入门之 内置模块 -- time模块 1.time模块 ​ time翻译过来就是时间,这个模块是与时间相关的模块 import time # 内置模块 -- 标准库 (1)time.ti ...

随机推荐

  1. android 支持发送空短信

    method:A) AP端修改:1.将ComposeMessageActivity.java 中的 isPreparedForSending() 作如下修改(删掉的code也可以注释掉)private ...

  2. AtCoder AGC030B Tree Burning

    题目链接 https://atcoder.jp/contests/agc030/tasks/agc030_b 题解 细节好题.. 首先假设第一步往右走,那么可以发现当拐弯的次数一定时路径是唯一的 于是 ...

  3. R_Studio(学生成绩)对数据缺失值md.pattern()、异常值分析(箱线图)

    我们发现这张Gary.csv表格存在学生成绩不完全的(五十三名学生,三名学生存在成绩不完整.共四个不完整成绩) 79号大学语文.高等数学 96号中国近代史纲要 65号大学体育 (1)NA表示数据集中的 ...

  4. 「CEOI2008」order

    题目链接 戳我 \(Solution\) 首先看看没有租条件的怎么弄.这很显然,就是普通最小割的套路 \(s\)向每个工作连一条流量\(x\)的边,\(x\)为工作收益 每个工作向每个机器连流量为\( ...

  5. 前端学习之一_html学习

    html元素分类 内连元素:出现在行内的元素            <img>,<q>,<a> 块元素:前后自动插入换行的元素         <h1> ...

  6. SQL 表 数据备份

    insert into SMTTemporarySave select * from [MSV0CIMDB].[PICS_20170706].dbo.SMTTemporarySave

  7. SpringBoot中application.yml基本配置详情

    把原有的application.properties删掉.然后 maven -X clean install,或者通过Maven Project双击clean和install(1)端口服务配置 #端口 ...

  8. spark MLlib 概念 2:Stratified sampling 层次抽样

    定义: In statistical surveys, when subpopulations within an overall population vary, it is advantageou ...

  9. ajaxfrom 和ajaxgird的区别

    ajaxfrom 和ajaxgird区别ajaxfrom适合单条数据,主要是用来显示主表的信息<hy:ajaxform2 id="ajaxform" name="d ...

  10. Detected memory leaks! 解决方法

    Detected memory leaks!Dumping objects ->f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\occmgr.cpp(195) ...