Python标准库os库的常用功能实例分析(os,python,开发技术)

时间:2024-05-09 07:24:05 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    1、目录操作

    1.1、获取当前目录

    #coding:utf-8importos#获取当前工作目录(绝对路径)print(os.getcwd())#E:\new\pythonProject\Blog#获取当前工作目录(绝对路径),值以Unicode编码返回print(os.getcwdb())#b'E:\\new\\pythonProject\\Blog'#获取当前目录,以"."表示print(os.curdir)#.#获取当前目录的上级目录,以".."表示print(os.pardir)#..

    Python标准库os库的常用功能实例分析

    1.2、创建目录

    #coding:utf-8importos#创建目录,路径可以是绝对路径也可以是相对路径,linux系统运行的程序还需指定mode参数,即文件夹的权限#文件目录存在时,再次创建会执行报错,因此实际开发中创建目录需判断目录是否存在ifos.path.lexists('./test'):#判断'./test'是否存在print("./test已经存在")else:os.mkdir('./test')#穿件'./test'目录,"."代表当前目录,等效于os.mkdir('test')print(os.listdir("E:\\new\\pythonProject\\Blog"))#['config','config.txt','demo.py','image','Music','Python0S.py','test','__init__.py']#递归创建目录ifos.path.lexists("E:\\new\\pythonProject\\Blog\\test\\12\\123"):passelse:os.makedirs('test\\12\\123')print(os.listdir("E:\\new\\pythonProject\\Blog\\test"))#['12']print(os.listdir("E:\\new\\pythonProject\\Blog\\test\\12"))#['213']#os.makedirs('test\\12\\123')#errorFileExistsError:[WinError183]当文件已存在时,无法创建该文件。:'test\\12\\123'

    Python标准库os库的常用功能实例分析

    1.3、删除目录

    #coding:utf-8importos#删除单个目录#目录不存在时报错,删除时判断目录是否存在#os.rmdir('test123')#FileNotFoundError:[WinError2]系统找不到指定的文件。:'test123'ifos.path.lexists('test1'):os.rmdir('test1')else:print("test1目录不存在")#非空目录报错,删除时先判断是否是空目录,在进行删除ifos.path.lexists('test2'):os.rmdir('test2')#OSError:[WinError145]目录不是空的。:'test'else:print("test2目录不存在")#先判断目录是否存在,再判断目录是否非空目录,再进行相应的操作ifos.path.lexists('test'):ifos.listdir('test'):print("test目录非空")else:os.rmdir('test')else:print("test目录不存在")#删除多个目录#目录不存在时报错,开发时判断先判断目录是否存在再进行操作#os.removedirs('test123')#FileNotFoundError:[WinError2]系统找不到指定的文件。:'test123'ifos.path.lexists('test4'):os.removedirs('test4')else:print("test4目录不存在")#目录非空时报错,ifos.path.lexists(r"test/12/213"):os.removedirs(r"test/12/213")else:print("test/12/213目录不存在")#test/12/213test下只有12目录12只有213目录213目录为空,则删除test#删除22和44目录,11目录非空(存在33目录),因此11目录保留ifos.path.lexists(r"11/22/44"):os.removedirs(r"11/22/44")else:print("11/22/44目录不存在")print(os.listdir())

    Python标准库os库的常用功能实例分析

    1.4、重命名目录

    #coding:utf-8importos#目录重命名#语法格式os.rename('oldName','newName')#原目录不存在时报错#os.rename('oldTest','newTest')#FileNotFoundError:[WinError2]系统找不到指定的文件。:'oldTest'->'newTest'ifos.path.lexists('oldTest'):os.rename('oldTest','newTest')else:print('oldTest目录不存在')ifos.path.lexists('11'):os.rename('11','newTest')else:print('11目录不存在')

    Python标准库os库的常用功能实例分析

    1.5、切换目录

    #coding:utf-8importos#变更工作目录,将工作目录变更至E:\new\pythonProject,在Python中"\"均有转义字符的作用,#因此使用"\\"将后面的"\"转移为"\"#从根目录起始的文件路径称之为绝对路径,根据当前位置起始的路径称之为相对路径print(os.getcwd())#E:\new\pythonProject\Blog#绝对路径os.chdir(r"E:\new\pythonProject\Blog\newTest")print(os.getcwd())#E:\new\pythonProject\Blog\newTestos.chdir(r"E:\new\pythonProject\Blog")print(os.getcwd())#E:\new\pythonProject\Blog#相对路径os.chdir("./newTest")print(os.getcwd())#E:\new\pythonProject\Blog\newTest#切换到当前目录的上级目录os.chdir(os.pardir)print(os.getcwd())#E:\new\pythonProject\Blog

    Python标准库os库的常用功能实例分析

    1.6、获取目录下的文件内容

    #coding:utf-8importos#获取目录下的文件内容#获取指定目录下的文件夹和文件的名称;只会查找指定目录的当前目录下的文件名和文件夹名称,不会查找下级的文件名和文件夹名称print(os.listdir("E:\\new\\pythonProject\\Blog"))#默认当前目录print(os.listdir())#文件不存在时报错,使用时先判断目录是否存在#print(os.listdir(r"E:\new\pythonProject\Blog1"))#FileNotFoundError:[WinError3]系统找不到指定的路径。:'E:\\new\\pythonProject\\Blog1'ifos.path.lexists(r"E:\new\pythonProject\Blog1"):print(os.listdir(r"E:\new\pythonProject\Blog1"))else:print("指定的目录不存在")

    Python标准库os库的常用功能实例分析

    1.7、判断目录是否存在

    #coding:utf-8importosprint(os.path.lexists(r'newTest'))#Trueprint(os.path.lexists(r'oldTest'))#Falseprint(os.path.lexists(r'11\oldTest'))#False

    Python标准库os库的常用功能实例分析

    1.8、判断是否是目录

    #coding:utf-8importos#目录不存在和非目录都返回Falseprint(os.path.isdir(r'11'))#Falseprint(os.path.isdir(r'config'))#Falseprint(os.path.isdir(r'newTest'))#True

    Python标准库os库的常用功能实例分析

    1.9、判断是否是绝对路径

    #coding:utf-8importos#路径不存在和非绝对路径都返回Falseprint(os.path.isabs(r'11'))#Falseprint(os.path.isabs(r'config'))#Falseprint(os.path.isabs(r'newTest'))#Falseprint(os.path.isabs(r'E:\new\pythonProject\Blog'))#True

    Python标准库os库的常用功能实例分析

    2、文件操作

    • 文件的IO操作完成后必须关闭连接对象

    • flags多个值时以|隔开

    2.1、读写文件

    #coding:utf-8importos#文件操作#文件的IO操作完成后必须关闭连接对象#常用格式os.open(path,flags,mode),mode一般为Linux系统文件操作的参数,设置文件权限"""常用的flags:os.O_RDONLY:以只读的方式打开os.O_WRONLY:以只写的方式打开os.O_RDWR:以读写的方式打开os.O_NONBLOCK:打开时不阻塞os.O_APPEND:以追加的方式打开os.O_CREAT:创建或打开文件os.O_TRUNC:打开一个文件并截断它的长度为零(必须有写权限)"""#flags多个值时以|隔开#以只读权限打开config文件,文件不存在时报错,先判断是否存在再进行操作,必要时需先判断是否为文件ifos.path.lexists(r'E:\new\\pythonProject\Blog\config.txt'):fd=os.open(r'E:\new\\pythonProject\Blog\config.txt',os.O_RDONLY)#读取11个字符,从0开始计数print(os.read(fd,10))#b'12356789ab'os.close(fd)else:pass#写权限打开config文件fd1=os.open("E:\\new\\pythonProject\\Blog\\config.txt",os.O_WRONLY)#print(os.read(fd1,10))#OSError:[Errno9]Badfiledescriptor#将文件的前N个字符替换为新的字符,替换长度由替换的内容长度决定os.write(fd1,bytes('python','UTF-8'))#文件的读写都是以字节类型存取os.close(fd1)#文件存在打开,文件不存在新增fd2=os.open("E:\\new\\pythonProject\\Blog\\config.txt",os.O_RDWR)print(os.read(fd2,10))os.write(fd2,bytes('java','UTF-8'))print(os.read(fd2,10))os.close(fd2)#追加模式打开文件,必须具有写权限fd3=os.open("E:\\new\\pythonProject\\Blog\\config.txt",os.O_RDWR|os.O_APPEND)print(os.read(fd3,100))os.write(fd2,bytes('java','UTF-8'))os.close(fd2)

    Python标准库os库的常用功能实例分析

    2.2、创建文件

    #coding:utf-8importos"""常用的flags:os.O_RDONLY:以只读的方式打开os.O_WRONLY:以只写的方式打开os.O_RDWR:以读写的方式打开os.O_NONBLOCK:打开时不阻塞os.O_APPEND:以追加的方式打开os.O_CREAT:创建或打开文件os.O_TRUNC:打开一个文件并截断它的长度为零(必须有写权限)"""#创建空文件fd=os.open("text.txt",os.O_CREAT)os.close(fd)#创建文件并写入数据时须具有写权限fd=os.open("text.txt",os.O_CREAT|os.O_RDWR)os.write(fd,bytes('Yang','UTF-8'))os.close(fd)

    Python标准库os库的常用功能实例分析

    2.3、删除文件

    #coding:utf-8importos#文件不存在时报错ifos.path.lexists('text.txt'):os.remove('text.txt')else:print("文件不存在")

    Python标准库os库的常用功能实例分析

    2.4、重命名文件

    #coding:utf-8importos#文件不存在时报错ifos.path.lexists('text.txt'):os.rename('text.txt',"new.txt")else:print("文件不存在")

    Python标准库os库的常用功能实例分析

    2.5、文件判断

    #coding:utf-8importos#文件是否存在print(os.path.exists(r"E:\new\pythonProject\Blog\config.txt"))#true#是否为文件print(os.path.isfile(r"E:\new\pythonProject\Blog\config.txt"))#True

    Python标准库os库的常用功能实例分析

    3、路径操作

    #coding:utf-8importos#拼接print(os.path.join("11",'22','33','server.log'))#11\22\33\server.log#分离路径中的路径寄文件名print(os.path.split(r"E:\new\pythonProject\Blog\config.txt"))#('E:\\new\\pythonProject\\Blog','config.txt')print(os.path.split(r"E:\new\pythonProject\Blog"))#('E:\\new\\pythonProject','Blog')#获取路径中的文件名print(os.path.basename(r"E:\new\pythonProject\Blog\config.txt"))#config.txt#获取路径中的路径名print(os.path.dirname(r"E:\new\pythonProject\Blog\config.txt"))#E:\new\pythonProject\Blog#获取绝对路径print(os.path.abspath(r"Blog\config.txt"))#E:\new\pythonProject\Blog\Blog\config.txt#分离文件拓展名print(os.path.splitext(r"E:\new\pythonProject\Blog\config.txt"))#('E:\\new\\pythonProject\\Blog\\config','.txt')

    Python标准库os库的常用功能实例分析

    4、其他

    #coding:utf-8importos#显示当前使用系统平台。'nt'代表Windows,'posix'代表Linuxprint(os.name)#nt#分隔符print("11"+os.altsep+'server.log')#11/server.logprint("11"+os.path.altsep+'server.log')#11/server.log#系统路径分隔符号;window为"\",linux为"/"print(os.sep)#\print(os.path.sep)#\#获取文件名称和后缀之间的间隔符号print(os.extsep)#.print("--------")#换行符print(os.linesep)print("110"+os.linesep+'119')#执行操作系统指令os.system("dir")

    Python标准库os库的常用功能实例分析

     </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
    本文:Python标准库os库的常用功能实例分析的详细内容,希望对您有所帮助,信息来源于网络。
    上一篇:centos怎么搭建部署docker环境下一篇:

    22 人围观 / 0 条评论 ↓快速评论↓

    (必须)

    (必须,保密)

    阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18