python-- os 模块

简介: python-- os 模块

os



import os
print(os.cpu_count())  # 查看cpu核数
import os
print(os.getcwd())  # 获取当前的工作路径,在哪个地方执行这个文件,getcwd就是这个路径
os.chdir(r'E:\django-project\RunnerApi\apps')  # 切换到别的路径下,r代表不转义
print(os.getcwd())

结果:

E:\django-project\RunnerApi\apps\apirunner
E:\django-project\RunnerApi\apps

import os
print(os.curdir)  # 返回当前目录   .
print(os.pardir)  # 返回当前目录的父目录   ..
print(os.listdir('.'))  # 列出目录下的所有文件和目录,目录下面的文件不列出来

结果:

.
..
['access.log', 'admin.py', 'apps.py', 'exa.log', 'json_demo', 'logger.log', 'migrations', 'models.py', 'pickle_demo', 'tests.py', 'urls.py', 'utils', 'views', 'views.py', '__init__.py', '__pycache__']

import os
print(os.sep)  # 输出操作系统的路径分隔符,win下为\,linux下为/     \
print([os.linesep])  # 输出当前操作系统使用的行终止符,wins下为\r\n,linux下为\n
print(os.pathsep)  # 输出用于分割文件路径的字符串,环境变量  ;  linux下为:
print(os.name)  # 输出当前使用平台,wins为nt,linux为posix     nt
print(os.system('ipconfig'))  # 执行操作系统下的命令,操作系统的编码如果是gbk,在pycharm里会乱码,因为pycharm默认编码为utf-8,一般用popen
print(os.environ)  # 获取系统环境变量

例:

import os
cmd_res = os.popen('dir').read()
print('----->>>>', cmd_res)
# 打印出的是当前目录下的所有文件,不加read打印出的是内存对象

import os
os.mkdir(r'c:a')  # 生成单级目录
os.makedirs(r'c:a\b\c\d')  # 生成多级递归目录,d在c里,c在b里,b在a里
os.rmdir(r'c:a')  # 删除单级空目录
os.removedirs(r'c:a\b\c\d')  # 若目录为空,则删除,并递归到上一目录,如若也为空,则删除,以此类推
os.remove(r'D:\PycharmProjects\zouzou\abc.txt')  # 删除某目录下的文件
os.rename('老文件名', '新文件名')  # 重命名文件/目录
print(os.stat(r'F:\chromedriver_win32.zip').st_size)  # 判断文件的大小,字节

import os
print(os.path.abspath(r'e:文档'))  # 获取路径
print(os.path.split(r'd:a\b\c.png'))  # 将路径分割为目录和文件名以元组返回  ('d:a\\b', 'c.png')
print(os.path.dirname(r'd:a\b\c.png'))  # 返回目录,也就是os.path.split(r'd:a\b\c.png')的第一个元素   d:a\b
print(os.path.basename(r'd:a\b\c.png'))  # 返回最后的文件名或目录   c.png
print(os.path.exists(path))  # 如果path路径存在,返回True
print(os.path.isabs(path))  # 如果path是绝对路径,返回True
print(os.path.isfile(path))  # 如果path是一个存在的文件,返回True
print(os.path.isdir(path))  # 如果path是一个存在的目录,返回True


总结


# os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
# os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
# os.chdir("dirname")  改变当前脚本工作目录;相当于shell下cd
# os.curdir  返回当前目录: ('.')
# os.pardir  获取当前目录的父目录字符串名:('..')
# os.makedirs('dirname1/dirname2')    可生成多层递归目录
# os.removedirs('dirname1')    若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
# os.mkdir('dirname')    生成单级目录;相当于shell中mkdir dirname
# os.rmdir('dirname')    删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
# os.listdir('dirname')    列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
# os.remove()  删除一个文件
# os.rename("oldname","newname")  重命名文件/目录
# os.stat('path/filename')  获取文件/目录信息
# os.sep    输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
# os.linesep    输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
# os.pathsep    输出用于分割文件路径的字符串
# os.name    输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
# os.system("bash command")  运行shell命令,直接显示
# os.environ  获取系统环境变量
# os.path.abspath(path)  返回path规范化的绝对路径
# os.path.split(path)  将path分割成目录和文件名二元组返回
# os.path.dirname(path)  返回path的目录。其实就是os.path.split(path)的第一个元素
# os.path.basename(path)  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
# 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.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
# os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间
# os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间

相关文章
|
2月前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
57 4
|
21天前
|
Python
Python Internet 模块
Python Internet 模块。
118 74
|
2月前
|
算法 数据安全/隐私保护 开发者
马特赛特旋转算法:Python的随机模块背后的力量
马特赛特旋转算法是Python `random`模块的核心,由松本真和西村拓士于1997年提出。它基于线性反馈移位寄存器,具有超长周期和高维均匀性,适用于模拟、密码学等领域。Python中通过设置种子值初始化状态数组,经状态更新和输出提取生成随机数,代码简单高效。
119 63
|
2月前
|
测试技术 Python
手动解决Python模块和包依赖冲突的具体步骤是什么?
需要注意的是,手动解决依赖冲突可能需要一定的时间和经验,并且需要谨慎操作,避免引入新的问题。在实际操作中,还可以结合使用其他方法,如虚拟环境等,来更好地管理和解决依赖冲突😉。
|
2月前
|
持续交付 Python
如何在Python中自动解决模块和包的依赖冲突?
完全自动解决所有依赖冲突可能并不总是可行,特别是在复杂的项目中。有时候仍然需要人工干预和判断。自动解决的方法主要是提供辅助和便捷,但不能完全替代人工的分析和决策😉。
|
2月前
|
JSON Linux 数据格式
Python模块:从入门到精通,只需一篇文章!
Python中的模块是将相关代码组织在一起的单元,便于重用和维护。模块可以是Python文件或C/C++扩展,Python标准库中包含大量模块,如os、sys、time等,用于执行各种任务。定义模块只需创建.py文件并编写代码,导入模块使用import语句。此外,Python还支持自定义模块和包,以及虚拟环境来管理项目依赖。
Python模块:从入门到精通,只需一篇文章!
|
2月前
|
Python
Python的模块和包
总之,模块和包是 Python 编程中非常重要的概念,掌握它们可以帮助我们更好地组织和管理代码,提高开发效率和代码质量
45 5
|
2月前
|
数据可视化 Python
如何在Python中解决模块和包的依赖冲突?
解决模块和包的依赖冲突需要综合运用多种方法,并且需要团队成员的共同努力和协作。通过合理的管理和解决冲突,可以提高项目的稳定性和可扩展性
|
2月前
|
Python
在Python中,可以使用内置的`re`模块来处理正则表达式
在Python中,可以使用内置的`re`模块来处理正则表达式
62 5
|
2月前
|
Java 程序员 开发者
Python的gc模块
Python的gc模块