一. 什么是os模块
os模块提供了多数操作系统的功能接口函数。当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,经常和文件、目录打交道,所以离不了os模块。python编程时,经常和文件、目录打交道,这是就离不了os模块,本节内容将对os模块提供的函数进行详细的解读。
- os.getcwd():
二、常用的os模块命令
- os.name——name顾名思义就是'名字',这里的名字是指操作系统的名字,主要作用是判断目前正在使用的平台,并给出操作系统的名字。如Windows 返回 'nt'; Linux 返回'posix'。
- os.sep:当前系统的分隔符。
- os.linesep:当前系统的换行符
注意该命令不带括号
import os
print(os.name)
print(os.sep)
print(os.linesep)
输出:
D:\anaconda\python.exe D:/bilibili大学/crawl_pool/os模块.py
nt
\
Process finished with exit code 0
- os.getcwd()——全称应该是'get current work directory',获取当前工作的目录,注意该命令带括号,除了第一个命令不带括号之外,以下命令基本都带括号。
import os
print(os.getcwd())
#输出:D:\bilibili大学\crawl_pool
- os.listdir(path):列出path目录下所有的文件和目录名。Path参数可以省略,即表示当前路径目录下的所有文件和目录名。以列表的形式全部列举出来,其中没有区分目录和文件
import os
print(os.listdir(r'D:\bilibili大学'))
******************************************************
['crawl_pool', 'environment', 'haipproxy-0.1', 'ProxyPool-master', 'python经典习题100道', 'quote_tutorial', 'redis-py-master', 'scrapy_pool', 'TBMeishi', 'Weixinarticles', '头条街拍', '妹子图', '宅男福利', '抓取头条街拍美图', '数据结构与算法', '猫眼Top100电影抓取', '简书代码', '街拍']
- os.remove(path):删除path指定的文件,该参数不能省略。
import os
try:
os.remove('haha')
print('删除完毕')
except FileExistsError:
print('文件不存在')
- os.rmdir(path)——删除path指定的目录,该参数不能省略。* os
import os
try:
os.rmdir(r'C:\Users\董贺贺\Desktop\新建文件夹 (2)')
print('删除完毕')
except FileExistsError:
print('文件不存在')
- os.mkdir(path)——创建path指定的目录,该参数不能省略。
import os
try:
os.mkdir(r'C:\Users\董贺贺\Desktop\五月天')
if os.path.exists(r'C:\Users\董贺贺\Desktop\五月天'):
print('已经创建')
except:
print('创建失败')
- os.path.isfile(path)——判断指定对象是否为文件。是返回True,否则False
- os.path.isdir(path)——判断指定对象是否为目录。是True,否则False。
- os.path.exists(path)——检验指定的对象是否存在。是True,否则False.
import os
p = r'C:\Users\董贺贺\Desktop\五月天'
try:
os.mkdir(p)
if os.path.exists(p):
print('已经创建')
except:
print('创建失败')
print(os.path.isfile(p))
print(os.path.isdir(p))
*******************************************************************
D:\anaconda\python.exe D:/bilibili大学/crawl_pool/os模块.py
已经创建
False
True
- os.path.split(path)——返回路径的目录和文件名,即将目录和文件名分开,而不是一个整体。此处只是把前后两部分分开而已。就是找最后一个'/'。
import os
p = r'D:\bilibili大学\猫眼Top100电影抓取\result.text'
print(os.path.split(p))
******************************************************
('D:\\bilibili大学\\猫眼Top100电影抓取', 'result.text')
- os.rename(old_path, new_path):重命名
函数解析用于命名文件或目录,从 src 到 dst,如果dst是一个存在的目录,将抛出OSError,不能覆盖原文件。
import os
old_path = r'C:\Users\董贺贺\Desktop\新建文本文档.txt'
new_path = r'C:\Users\董贺贺\Desktop\重命名.txt'
os.rename(old_path,new_path)
os.rename()只能重命名路径最后的文件或目录的新名字。
os.renames()不仅可以重命名文件或目录的新名字。甚至可以是包含在目录中的文件,或者完整的目录树
- os.chdir() :用于改变当前工作目录到指定的路径。
chdir()方法语法格式如下:os.chdir(path):path -- 要切换到的新路径。如果允许访问返回 True , 否则返回False。
import os
new_path = r'C:\Users\董贺贺\Desktop\葫芦娃'
print(os.getcwd())
os.chdir(new_path)
print(os.getcwd())
***************************************************
D:\bilibili大学\crawl_pool
C:\Users\董贺贺\Desktop\葫芦娃
网友评论