python os模块详解

一、Python os模块(Linux环境)
1.1 执行shell命令
- os.system('cmd') 执行命令不保存结果 ![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180805231116905-284539462.png) - os.popen('command') 执行后返回结果,使用.read()方法读出 ![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806003007705-1147413460.png)
1.2 对文件和目录的创建删除等
1.2.1 目录 - os.getcwd()获得当前目录 - os.curdir 当前目录 - os.pardir 父目录
>>> import os
>>> os.getcwd()
'/home/shiqi'
>>> os.curdir
'.'
>>> os.pardir
'..'

1.2.2 创建和删除目录

  • os.mkdir('a_dir') 创建单级目录
  • os.rmdir('a_dir') 删除单级目录
>>> os.mkdir('a_dir')
>>> os.system('ls')
a_dir	  vmwaretools
README.md  rpc_none.py		   shiqi_ssh.txt
0
>>> os.rmdir('a_dir')
>>> os.system('ls')
README.md		rpc_none.py  shiqi_ssh.txt
vmwaretools
0
  • os.makedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir')
    递归的创建多级目录,等于linux下mkdir -p
  • os.removedirs('./b_par_dir/bb_child_dir/bbb_dir')
    递归的删除空目录,有文件就不删,linux下rm -r
root@zengyue:/home/shiqi# ls
README.md               rpc_none.py  shiqi_ssh.txt
rpc_homework_server.py  shiqigo.py   vmwaretools

>>> import os
>>> os.makedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir') 

root@zengyue:/home/shiqi# ls
b_par_dir    vmwaretools
README.md  rpc_none.py             shiqi_ssh.txt
root@zengyue:/home/shiqi# cd ./b_par_dir/bb_child_dir/bbb_dir/
root@zengyue:/home/shiqi/b_par_dir/bb_child_dir/bbb_dir# pwd
/home/shiqi/b_par_dir/bb_child_dir/bbb_dir

>>> os.removedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir')
>>> os.system('ls')
README.md		rpc_none.py  shiqi_ssh.txt
vmwaretools
  • os.listdir('.') 返回指定目录下的文件(目录)列表
  • os.remove() 删除指定文件
>>> os.listdir('.')
['rpc_none.py', 'vmwaretools', 'README.md',  'shiqi_ssh.txt', '.rpc_server.py']
二、重要的各种分割符号
1. os.sep 输出操作系统的分隔符 Linux: '/' ![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806001657552-53715858.png) Windows: r'\' 前缀r或者\\为转义符 ![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806001809946-937226643.png)
  1. os.linesep 输出当前平台的行终止符,及文件路径的分割符
    Linux: '\n' 行终止
    Linux: ':' 路径分割

    Windows: '\r\n' 行终止
    Windows: ';' 路径分割
os.path
os.path 下的方法点击这儿
posted @   G1733  阅读(256)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示