python目录操作【os和os.path】
目录也称作文件夹,用于分层保存文件,通过目录可以分门别类地存放文件。我们可以通过目录迅速找到想要哦的文件。在python中,并没有提供直接操作目录的函数或者对象,而是需要使用内置的os和os.path模块实现。
备注:os模块是系统内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统相关,不同系统上操作运行,会得到不一样的结果。
常见的目录操作主要判断目录是否存在,创建目录,删除目录和遍历目录等,导入os模块后,可以使用该模块提供的通用变量获取与系统有关的信息。
(1)namc:用于获取系统的操作类型。
import os print(os.name) #输出 nt
说明:如果输出结果为nt,则表示windows系统,如果是posix.则表示linux,Unix,或者mac系统
(2)linesep:获取当前操作系统上的换行符。
import os os.linesep #输出 '\r\n
os模块还提供了一些目录操作的函数。如图所示
os.path模块提供的目录相关的函数
(3)路径
用于定位一个文件或者目录的字符串被称为路径,在程序开发时,通常涉及2种路径,绝对路径和相对路径,什么是当前目录,当前目录是指当前文件所在的目录,在python中,可以通过os模块提供getcwd()函数获取当前目录。
import os print(os.getcwd()) #C:\Users\HZT\PycharmProjects\aotu\shop
这个就是当前目录
相对路径就是依赖于当前工作目录的,如果在当前工作目录下,有一个名称为message.txt的文件,那么在打开这个文件时,就可以直接写上文件名,这时就是采用的绝对路径。
备注:在指定文件路径时,也可以在表示路径的字符串前加上字母r或者R,那么该字符串将原样输出,这时路径中的分隔符将不需要转义。
(4)拼接路径
如果想要2个或者多个路径拼接在起组成一个新路径。可以使用os.path提供的join()函数来实现。(使用os.path.join()函数拼接时,并不会检测该路径是否真实存在)
例如
import os print(os.path.join("e:\program\python\code","demo\message.txt")) #e:\program\python\code\demo\message.txt
(5)判断目录是否存在
在python中,有时候需要判断给定的目录是否存在,这时可以使用os.path提供的exists()函数实现。
improt os print(os.path.exists("c:\\demo")) #成功返回True失败返回False