os模块
一.os模块
1.os.getcmd()
获取当前的工作目录,当前Python脚本的工作路径。
import os a = os.getcwd() print(a) 结果:G:\爬虫\Zhihu-Spider-master import os a = os.getcwdb() print(a) 结果:b'G:\\\xc5\xc0\xb3\xe6\\Zhihu-Spider-master'
2.os.chdir(r’路径’)
改变当前脚本的工作目录,相当于Linux下的cd命令
import os os.chdir(r'D:\博客\模块') print(os.getcwd()) 结果:D:\博客\模块
3.os.curdir
返回当前目录,不知道有啥用。。。
4.os.pardir
获取当前目录的父目录
import os a = os.pardir print(os.listdir(a)) 结果:['.idea', 'CnkiSpider-master', 'DongGuan', 'Douban250']
5.os.makedirs(path)
在指定目录递归生成多层目录
import os os.makedirs('div1/div2')
6.os.removedirs(path)
若目录为空,则删除;并且递归到上一层目录,为空删除;以此类推。
import os os.removedirs('div1/div2')
7.os.mkdir(path)
在指定路径下生成单极目录
import os os.mkdir('div1')
8.os.rmdir(path)
删除指定路径下单极目录
import os os.rmdir('div1')
9.os.listdir(path)
列出指定路径下的所有文件和子目录,包括隐藏文件
import os print(os.listdir(os.getcwd())) 结果:['analysis', 'datafile', 'image', 'LICENSE', 'README.md', 'requirments.txt', 'spider', 'test.py']
10.os.remove(path)
删除指定目录下的文件。
import os os.remove('test.txt')
11.os.rename('oldname','newname')
文件重命名
12.os.sep
输出操作系统特定的路径分隔符。win-\\,linux-/
13.os.linesep
输出当前平台使用的行终止符。win-\t\n,linux-\n
14.os.pathsep
输出用于分隔文件路径的字符串(;)
15 os.name
判断正在使用的平台,win- ‘nt', Linux-’posix'。
import os print(os.name) 结果:nt
16.os.system(‘bash command’)
相当于在win系统的cmd中执行相关命令。
17. os.environ
获取系统的环境变量。
二.os.path模块
1.os.path.split(path)
把path分隔成目录和文件名称的二元数组返回。
import os a = r'E:\code\tests\setting.py' print(os.path.split(a)) 结果:('E:\\code\tests', 'setting.py')
2.os.path.abspath(path)
返回path规范化的绝对路径。
import os a = r'E:\code\tests\setting.py' print(os.path.abspath(a)) 结果:E:\code\tests\setting.py
3. os.path.dirname(path)
返回path的目录。
import os a = r'E:\code\tests\setting.py' print(os.path.dirname(a)) 结果: E:\code\tests
4.os.path.basename(path)
返回path中最后的文件名称。
import os a = r'E:\code\tests\setting.py' print(os.path.basename(a)) 结果:setting.py
5.os.path.exists(path)
若path存在,返回True,不存在,返回false
import os a = r'E:\code\tests' b = r'E:\sds' print(os.path.exists(a)) print(os.path.exists(b)) 结果:True,False
6. os.path.isabs(path)
如果path是绝对路径,返回TRUE import os a = r'E:\code\tests\setting.py' print(os.path.isabs(a)) 结果:true
7. os.path.isfile(path)
如果path是一个存在的文件,返回true;不存在返回false。
import os a = r'E:\code\tests\setting.py' print(os.path.isfile(a)) 结果:TRUE
8. os.path.isdir(path)
如果path是一个存在的目录,返回true;否则返回false.
import os a = r'E:\code\tests' print(os.path.isdir(a)) 结果:True
9.os.path.join(path1,path2,..,pathn)
将多个路径组合后返回
import os,sys a = r'E:\code\tests\serr.py' print(os.path.dirname(a)) print(sys.path[0]) print(os.path.join(os.path.dirname(a), 'datafile'))
结果: E:\code\tests G:\爬虫\Zhihu-Spider-master E:\code\tests\datafile
10.文件的时间操作
(1)os.path.getatime(path) 指向path代表的文件或者目录最后的存取(访问)时间。 import os a = r'E:\code\tests\setting.py' print(os.path.getatime(a)) 结果:1497363246.078853(时间戳)
(2)os.path.getmtime(path) 指向path代表的文件或者目录最后的修改时间。 import os a = r'E:\code\tests\setting.py' print(os.path.getmtime(a)) 结果:1497363253.4322734(时间戳)
(3)os.path.getctime(path) 指向path代表的文件或者目录最后的创建时间 import os a = r'E:\code\tests\setting.py' print(os.path.getctime(a)) 结果:1497363253.4322734(时间戳)