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. 论文阅读:Offloading Distributed Applications onto SmartNICs using iPipe

    摘要: 包含丰富计算资源的新兴多核SoC SmartNIC具有卸载通用数据中心服务器任务的潜力,但是目前尚不清楚如何有效地使用SmartNIC并最大程度地减少卸载收益,尤其是对于分布式应用程序. 为此 ...

  2. 使用Hive-JDBC遇到的一些问题解决

    使用Hive-JDBC遇到的一些问题解决(转) 标签(空格分隔): Hive 1,java.lang.NoClassDefFoundError: org/apache/hive/service/cli ...

  3. python学习之路(18)

    返回函数 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. 我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: >>> def a(* ...

  4. EDA cheat sheet

    %config InlineBackend.figure_format = 'svg' 在jupyter notebook中使用这个命令绘制更清晰的图像,注意百分号后不能有空格. 1. Univari ...

  5. 【每日一包0009】group-array

    [github地址:https://github.com/ABCDdouyae...] group-array 对数组里面的多项按照指定的key进行整合 用法:group-array(arr, key ...

  6. linux查询端口被哪个程序使用了

    使用如下命令查询8000端口被哪个程序使用 netstat -tunlp|

  7. kotlin之字符串

    在kotlin 中 使用String 表示字符串类型,如下二类字符串 一 普通字符串 var s1 = "hello world" 二 保留原始格式的字符串 var s2 = &q ...

  8. 第二章 SpringCloud之Eureka-Server服务发现组件

    1.Eureka简介 文档:https://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html ############### ...

  9. linux 下的快捷键操作

    概述 今天发现自己码代码的效率有点低,所以查找了一下 linux 常用的快捷键操作,记录下来,供以后开发时参考,相信对其他人也有用. linux 终端常用快捷键 tab:补全命令 Ctrl + u:剪 ...

  10. WPF 使用Task代替ThreadPool和Thread

    一:Task的优势 ThreadPool相比Thread来说具备了很多优势,但是ThreadPool却又存在一些使用上的不方便.比如: 1: ThreadPool不支持线程的取消.完成.失败通知等交互 ...