python中os模块讲解
本文主要介绍一些os模块常用的方法:
先看下我的文件目录结构
D:\LearnTool\pycode\part1
在此目录下的文件如下:
- abcd.py
- demo1.1.py
- demo1.2.py
- zhang.py
当前运行的文件是abcd.py
1.获取当前文件所在目录 os.path.dirname(“filename”)
import os
#__file__是内置变量,代表的就是当前运行的程序文件
d1=os.path.dirname(__file__)
print(d1)
输出:D:\LearnTool\pycode\part1
使用__file__变量的时候,如果你的程序是在控制台窗口运行的,并且是用的相对路径,例如运行的时候输入:Python abcd.py
那么得到的d1为空字符串,如果用的是绝对路径,例如运行的时候输入:
python D:\LearnTool\pycode\part1\abcd.py
那么d1会正常的显示出来当前文件所在目录。所有谨慎使用!
#另一种方法
import os
d1=os.getcwd()
print(d1)
输出:D:\LearnTool\pycode\part1
注意:其实os.path.dirname()就是返回上级目录的意思,如果传的参数是个文件,那么就返回当前文件所在目录,如果传的参数是个文件目录,那么就返回这个目录的上级目录。
2.获取当前文件的绝对路径 os.path.abspath(“filename”)
import os
d1=os.path.abspath(__file__)
print(d1)
输出:D:\LearnTool\pycode\part1\abcd.py
3.拼接文件目录 os.path.join(path,name)
import os
d1=os.path.dirname(__file__)
d2=os.path.join(d1,"cache")
d3=os.path.join(d1,"cache","hello")
print(d2)
print(d3)
输出:
D:\LearnTool\pycode\part1\cache
D:\LearnTool\pycode\part1\cache\hello
4.获取上级目录
import os
d1=os.path.dirname(__file__)
#这里的..就是表示上级目录
d2=os.path.join(d1,"..")
d3=os.path.abspath(d2)
print(d3)
输出:D:\LearnTool\pycode
#另一种方法
import os
d1=os.getcwd()
d2=os.path.dirname(d1)
print(d2)
输出:D:\LearnTool\pycode
5.查看指定目录下的所有文件 os.listdir(“dirname”)
import os
d1=os.path.dirname(__file__)
#它是以列表的形式返回
d2=os.listdir(d1)
print(d2)
输出:['abcd.py', 'demo1.1.py', 'demo1.2.py', 'demo1.3.py', 'zhang.py']
6.重命名文件 os.rename(“oldname”,”newname”)
7.删除文件 os.remove(‘filename’)
8.删除单级目录文件 os.rmdir(‘dirname’)
- 意思就是你要删除的目录下不能有其他目录,也不可以有其他文件。
9.查看是否是个文件 os.path.isfile(path) 是返回True
import os
print(os.path.isfile(os.path.abspath(__file__)))
输出:True
10.查看是否是个目录 os.path.isdir(path) 是返回True
import os
print(os.path.isdir(os.path.dirname(__file__)))
输出:True
11.查看指定的路径是否存在 os.path.exists(path)
import os
b=os.path.exists("d:\LearnTool\pycode\part1")
print(b)
输出:True
12.获取文件或者目录信息 os.stat(“filename”)
import os
d1=os.path.abspath(__file__)
print(os.stat(d1))
输出:nt.stat_result(st_mode=33206, st_ino=0L, st_dev=0L, st_nlink=0, st_uid=0, st_gid=0, st_size=78L, st_atime=1497404754L, st_mtime=1497404754L, st_ctime=1497404754L)
13.获取当前使用系统平台 os.name
import os
d1=os.name
print(d1)
输出:nt
14.获取系统环境变量 os.environ
import os
d1=os.environ
for key in d1.keys():
print(key,":",d1[key])
输出:
('TMP', ':', 'C:\\Users\\ZNGK~1\\AppData\\Local\\Temp')
('PYTHONIOENCODING', ':', 'UTF-8')
('COMPUTERNAME', ':', 'HGH8JVHG')
('USERDOMAIN', ':', 'HGH8JVHG')
('VS100COMNTOOLS', ':', 'D:\\LearnTool\\vs2010\\Common7\\Tools\\')
.....
......
输出一大堆,我就不列举了,它是以字典的形式返回的
......
('PUBLIC', ':', 'C:\\Users\\Public')
15.创建单级目录 os.mkdir(path)
import os
os.mkdir("e:\\cs")
这个函数只能创建一级目录,而且参数可以是绝对路径,也可以是相对路径,如果是相对路径,意思就是在程序文件所在目录创建你的目录。
16.创建多级目录 os.makedirs(path)
import os
os.makedirs("e:\\www\dd\\cc")
它和mkdir()区别就是它可以创建多级目录,相对路径和绝对路径都行。
17.拆分路径名 os.path.split()
import os
t1=os.path.split('D:\\LearnTool\\pycode\\part1\\abcd.py')
t2=os.path.split('D:\\LearnTool\\pycode\\part1')
print(t1)
print(t2)
输出:
('D:\\LearnTool\\pycode\\part1', 'abcd.py')
('D:\\LearnTool\\pycode', 'part1')
把一个路径(这里的路径不一定是真实存在的)拆分为两部分,后一部分总是最后级别的目录或文件名。还有一个函数是os.path.splitext()可以直接让你得到文件扩展名,例如:
import os
t1=os.path.splitext('D:\\LearnTool\\pycode\\part1\\abcd.py')
print(t1)
输出:
('D:\\LearnTool\\pycode\\part1\\abcd', '.py')
os模块还有一些其他的方法,在此我只列举了一些常用的。
python中os模块讲解的更多相关文章
- python中os模块中文帮助
python中os模块中文帮助 python中os模块中文帮助文档文章分类:Python编程 python中os模块中文帮助文档 翻译者:butalnd 翻译于2010.1.7——2010.1.8 ...
- python中os模块在windows下的使用
今天学习了一下Python的os模块,主要是针对文件夹和文件路径的一系列操作. 与Python内置函数相比这里这里的函数功能更多样化,功能也更强大.但是学习过程中我发现很多函数都是只适用于unix系统 ...
- python中os模块
os 模块 操作系统模块,该模块主要处理与操作系统相关的操作 最常用是文件操作:打开.读取 import os os.getcwd() #获取当前执行文件夹路径 os.chdir('dirnam ...
- python中OS模块操作文件和目录
在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...
- 小白进阶—python中os模块用法
一.os模块概述 python中的os 模块包含普遍的操作系统功能,这个模块不受平台限制,即windows和linux上都适用. 二.常用方法 1.os.name 返回正在使用的平台.如果是windo ...
- 19.python中os模块的常见用法
常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt', 而对于Linux/Unix用户,它是'posix'. os. ...
- python中os模块的常用方法
1.os模块:os模块在python中包含普遍的操作系统功能,下面列出了一些在os模块中比较有用的部分. os.sep可以取代操作系统特定的路径分隔符.windows下为 “\\” os.name字符 ...
- Python中os模块、csv模块和xlrd模块的使用
目录 os模块的使用 open("test.txt","mode") 读取文件中的内容 f.read() f.readline(size) f.readline ...
- python中os模块和sys模块的常见用法
OS模块的常见用法 os.remove() 删除文件 os.rename() 重命名文件 os.walk() 生成目录树下的所有文件名 os.chdir() 改变目录 os.mkd ...
随机推荐
- Codeforces Round #533(Div. 2) B.Zuhair and Strings
链接:https://codeforces.com/contest/1105/problem/B 题意: 给一个字符串和k,连续k个相同的字符,可使等级x加1, 例:8 2 aaacaabb 则有aa ...
- Codeforces Round #397 by Kaspersky Lab and Barcelona Bootcamp (Div. 1 + Div. 2 combined) C
Misha and Vanya have played several table tennis sets. Each set consists of several serves, each ser ...
- Unix高级编程之文件权限
1.访问权限表 st_mode 意义 S_IRUSR 用户-读 S_IWUSR 用户-写 S_IXUSR 用户-执行 S_IRGRP 组-读 S_IWGRP 组-写 S_IXGRP 组-执行 S_IR ...
- 牛客网Java刷题知识点之Java集合类里面最基本的接口有哪些
不多说,直接上干货! https://www.nowcoder.com/ta/review-java/review?tpId=31&tqId=21086&query=&asc= ...
- (转)MySql的常用的语句
MySQL常用语句 一.连接MySQL 格式: mysql -h 主机地址 -u 用户名 -p 用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysql bin, ...
- winform 更新服务器程序
感谢csdn jekytan 的共享 http://download.csdn.net/detail/jekytan/4242666 本地xml文件 <?xml version="1. ...
- 用vue.js实现购物车功能
购物车是电商必备的功能,可以让用户一次性购买多个商品,常见的购物车实现方式有如下几种: 1. 用户更新购物车里的商品后,页面自动刷新. 2. 使用局部刷新功能,服务器端返回整个购物车的页面html 3 ...
- How to install Eclipse in linux
http://askubuntu.com/questions/26632/how-to-install-eclipse
- ubuntu 14.04 构建openstack使用的ubunt 16 的桌面版的使用镜像
1. 下载ubuntu 16.04桌面版的iso文件,我的个人网盘中有,可以下载 https://pan.baidu.com/s/14qT3lbbqLwDaejmz2VSkyw 2. 安装制作镜像文件 ...
- DRM 简介
首先,我们对和DRM 相关的一些概念进行介绍. Buffer: 对于RAC 数据库,当一个数据块被读入到buffer cache后,我们就称其为buffer , cache fusion 会将这个bu ...