第十二篇 os模块
Python的os模块提供了系统相关,目录,文件操作,执行命令等操作。
1.文件和目录操作相关的方法:
方法 | 说明 |
os.mkdir | 创建目录 |
os.rmdir | 删除目录 |
os.rename | 重命名 |
os.remove | 删除文件 |
os.getcwd | 获取当前所在目录 |
os.walk | 遍历目录 |
os.path.join | 连接目录和文件名 |
os.path.split | 分割文件名和目录 |
os.path.abspath | 获取绝对路径 |
os.path.dirname | 获取路径 |
os.path.basename | 获取文件名或者文件夹名 |
os.path.splitext | 分离文件名和扩展名 |
os.path.isfile | 判断路径是否为一个文件 |
os.path.isdir | 判断路径是否为一个目录 |
示例:
1.os.path.abspath:获取文件或者目录的绝对路径
In []: import os In []: os.path.abspath('demo.txt')
Out[]: 'E:\\test\\sys\\demo.txt' In []: import os In []: os.path.abspath('sys')
Out[]: 'E:\\test\\sys\\sys' In []: os.path.abspath('.')
Out[]: 'E:\\test\\sys'
2.os.path.dirname:获取文件或者目录的路径
In []: os.path.dirname('E:\\test\\sys\\demo.txt')
Out[]: 'E:\\test\\sys' In []: os.path.dirname('E:\\test\\sys\\')
Out[]: 'E:\\test\\sys'
3.os.path.basename:获取文件名或者文件夹名
In []: os.path.basename('E:\\test\\sys\\demo.txt')
Out[]: 'demo.txt' In []: os.path.basename('E:\\test\\sys')
Out[]: 'sys'
4.os.path.splitext:分离文件名和扩展名
In []: import os In []: os.path.splitext('E:\\text\\sys\\demo.txt')
Out[]: ('E:\\text\\sys\\demo', '.txt') In []: os.path.splitext('E:\\text\\sys\\')
Out[]: ('E:\\text\\sys\\', '') In []: os.path.splitext('E:\\text\\sys')
Out[]: ('E:\\text\\sys', '')
5.os.path.isfile:是否为文件
In []: import os In []: os.path.isfile('E:\\test\\sys\\demo.txt')
Out[]: True In []: os.path.isfile('E:\\test\\sys\\')
Out[]: False
6.os.path.isdir:是否为目录
In []: import os In []: os.path.isdir('E:\\test\\sys\\')
Out[]: True In []: os.path.isdir('E:\\test\\sys\\demo.txt')
Out[]: False
7.os.walk:遍历目录
返回3个元素的元组,dirpath是以字符串形式返回该目录下的所有绝对路径,dirnames是以列表的形式返回每个绝对路径下的文件夹名字,filenames十一列表形式返回该路径下的文件名字。
In []: import os In []: for dirpath,dirnames,filenames in os.walk('E:\\test'):
...: print(dirpath)
...: print(dirnames)
...: print(filenames)
...:
E:\test
['lib', 'sys']
[]
E:\test\lib
[]
[]
E:\test\sys
[]
['demo.txt']
2.系统相关的方法:
方法/变量 | 说明 |
os.name | 查看当前操作系统的名称 |
os.environ | 获取当前系统的环境变量 |
os.sep | 获取当前平台的分隔符 |
os.extsep | 获取文件名和文件扩展名之间的分割符号 |
os.pathsep | 获取path环境变量之间的分隔符 |
os.linesep | 获取行结束符 |
示例:
In []: import os In []: os.name
Out[]: 'nt' In []: os.environ
Out[]:
environ{'ALLUSERSPROFILE': 'C:\\ProgramData',
'WORKON_HOME': 'E:\\test'} In []: os.sep
Out[]: '\\' In []: os.extsep
Out[]: '.' In []: os.pathsep
Out[]: ';' In []: os.linesep
Out[]: '\r\n' In []:
第十二篇 os模块的更多相关文章
- Python之路(第十四篇)os模块
一.os模块 1.os.getcwd() 获取当前工作目录(当前工作目录默认都是当前文件所在的文件夹) import os print(os.getcwd()) 2.os.chdir(path) 改变 ...
- Python学习【第十二篇】模块(2)
序列化 1.什么是python序列化? 把变量从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling 序列化就是将python的数据类型转换成字符串 反序列化就是将字符串转换成 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十二:串口模块① — 发送
实验十二:串口模块① — 发送 串口固然是典型的实验,想必许多同学已经作烂,不过笔者还要循例介绍一下.我们知道串口有发送与接收之分,实验十二的实验目的就是实现串口发送,然而不同的是 ... 笔者会用另 ...
- Python开发【第二十二篇】:Web框架之Django【进阶】
Python开发[第二十二篇]:Web框架之Django[进阶] 猛击这里:http://www.cnblogs.com/wupeiqi/articles/5246483.html 博客园 首页 ...
- 跟我学SpringCloud | 第十二篇:Spring Cloud Gateway初探
SpringCloud系列教程 | 第十二篇:Spring Cloud Gateway初探 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 如 ...
- Spring Cloud第十二篇 | 消息总线Bus
本文是Spring Cloud专栏的第十二篇文章,了解前十一篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring ...
- 解剖SQLSERVER 第十二篇 OrcaMDF 行压缩支持(译)
解剖SQLSERVER 第十二篇 OrcaMDF 行压缩支持(译) http://improve.dk/orcamdf-row-compression-support/ 在这两个月的断断续续的开发 ...
- 第十二篇 SQL Server代理多服务器管理
本篇文章是SQL Server代理系列的第十二篇,详细内容请参考原文 在这一系列的上一篇,我们查看了维护计划,一个维护计划可能会创建多个作业,多个计划.你还简单地看了SSIS子系统,并查看了维护计划作 ...
- 第十二篇 Integration Services:高级日志记录
本篇文章是Integration Services系列的第十二篇,详细内容请参考原文. 简介在前一篇文章我们配置了SSIS内置日志记录,演示了简单和高级日志配置,保存并查看日志配置,生成自定义日志消息 ...
随机推荐
- mysql数据增删查授权
一 介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...
- js实现的点击div区域外隐藏div区域
首先看下JS的事件模型,JS事件模型为向上冒泡,如onclick事件在某一DOM元素被触发后,事件将跟随节点向上传播,直到有click事件绑定在某一父节点上,如果没有将直至文档的根. 阻止冒泡:1.对 ...
- Python多线程-队列
队列就是存东西取东西,多用于多线程中 按照顺序 对传入的数据按规定的顺序输出 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" ...
- Linux性能监测:网络篇
网络的监测是所有 Linux 子系统里面最复杂的,有太多的因素在里面,比如:延迟.阻塞.冲突.丢包等,更糟的是与 Linux 主机相连的路由器.交换机.无线信号都会影响到整体网络并且很难判断是因为 L ...
- js操作一般文件和csv文件
js操作一般文件和csv文件 将文本文件读成字符串 <input type="file" id="upload"> document.getElem ...
- 第十六章 Java内存模型(待续)
········
- c语言语法目录一
1.#include<stdio.h> include 是要告诉编译器,包含一个头文件 在c语言中,任何库函数调用都需要提前包含头文件 <头文件> 代表让c语言编译器去系统目录 ...
- oracle使用exp/imp导入导出(用户)
实例,从远程机器上导出nxgy用户的所有对象和数据,然后导入到本机数据库的nxgy用户里(用户名可自定义) 如果本机nxgy用户已经存在(数据没用,可以删除),级联删除用户所有对象 首先,从远程机器上 ...
- (转)Mac下MySql安装经历(含安装错误排查、卸载多种折腾)
在安装mysql的时候,活活折腾我两天.结果终于被我折腾成功了……一开始我就放了个错误:我下了32位版本的mysql:mysql-5.5.8-osx10.6-x86.dmg 须知在mac下装的是64位 ...
- 开坑数位dp
[背景] 在10月3日的dp专练中,压轴的第6题是一道数位dp,于是各种懵逼. 为了填上这个留存已久的坑,蒟蒻chty只能开坑数位dp了. [例题一][HDU2089]不要62 题目大意:给你一个区间 ...