之前如果要使用 python 操作文件路径,我总是会条件反射导入 os.path. 而现在,我会更加喜欢用新式的 pathlib, 虽然用得还是没有 os.path 熟练,但是以后会坚持使用. pathlib 库从 python3.4 开始,到 python3.6 已经比较成熟.如果你的新项目可以直接用 3.6 以上,建议用 pathlib.相比于老式的 os.path 有几个优势: 老的路径操作函数管理比较混乱,有的是导入 os, 有的又是在 os.path 当中,而新的用法统一可以用 pat…
Python的路径操作(os模块与pathlib模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.os.path模块(Python 3.4版本之前推荐使用该模块) #!/usr/bin/env python #_*_coding:utf-8_*_ #@author :yinzhengjie #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7…
目录 1. os.path模块 2. pathlib模块 2.1 目录操作 2.2 文件操作 3. shutil模块 3.1 os模块 3.2 shutil模块 1. os.path模块 3.4版本之前使用os.path模块,3.4版本之后建议使用pathlib模块 方法 解释 path.join 拼接一个路径出来 path.exists 判断该路径是否存在 path.split 将路径切割成头和尾的一个元组 path.abspath 返回一个绝对路径 path.dirname 返回'目录' p…
路径操作 路径操作模块 os模块 os属性 os.name # windows是nt, linux是posix os.uname() # *nix支持 sys.platform #sys模块的属性, windows显示win32, linux显示linux os方法 os.listdir('o:/tmp') # 返回指定目录内容列表,不递归 os.stat(path, *, dir_fd=None, follow_symlinks=True) os.lstat() # 如果是软连接可以使用这个方…
文件系统操作(os模块) import os file_name = "D:\\test_data\\1.txt" file_name_2 = "D:\\test_data\\3.txt" # 删除文件 # os.remove(file_name) # 文件重命名 # os.rename(file_name, file_name_2) # 删除空目录 dir_name = 'D:\\test_data\\1' # os.removedirs(dir_name) di…
复习 ''' 1.跨文件夹导包 - 不用考虑包的情况下直接导入文件夹(包)下的具体模块 2.__name__: py自执行 '__main__' | py被导入执行 '模块名' 3.包:一系列模块的集合体,通过包内的__init__文件来管理包中所有模块提供给外界的名字 -- 存放所以模块的文件夹名就是包名 4.导包三件事: 1)编译__init__文件的pyc 2)执行__init__文件形成全局名称空间,作为包的全局名称空间,包能直接使用的名字全部是__init__文件中提供的 3)在导包文…
1,搜索文件,文件过滤 这里使用:pathlib 模块的  Path.glob(pattern)  方法,该方法可以用来过滤目标文件,以迭代器的形式返回搜索结果. pattern: 通配符:"*.py":搜索指定目录下所有的py后缀文件,只搜索当前目录,不搜索子目录."**/*.py":搜索指定目录下所有的py后缀文件,包括子目录."**" 模式表示 "此目录以及所有子目录,递归".换句话说,它启用递归通配: 文件名可以使用以…
  文件基本操作 r,以读模式打开,  r+=r+w, w, 写模式(清空原来的内容), w+=w+r, a , 追加模式, a+=a+r, rb, wb, ab, b表示以二进制文件打开 想在一段文字的中间添加内容, 则用 r+ 文件函数: f.read(), 读取全部; f.read(size)表示size个字节的数据 , 返回字符串 f.write(),  没有writeline函数 f.readline()读取一行, f.readlines()  读取多行, 形成一个list f.wri…
print(os.environ.get('HOME')) # 打印`HOME`这个环境变量 /Users/<> file_path = os.environ.get('HOME') + '/text.txt' # 拼贴文件路经,注意不要漏掉`/` print(file_path) /Users/<>/text.txt file_path = os.path.join(os.environ.get('HOME'), 'test.txt') # 使用`os.path.join`也可以…
StringIO StringIO操作 BytesIO BytesIO操作 file-like对象 路径操作 路径操作模块 3.4版本之前:os.path模块 3.4版本开始 建议使用pathlib模块,提供Path对象来操作.包括目录和文件 pathlib模块 from pathlib import Path 目录操作 初始化  路径拼接和分解 #在windows下的Pycharm中运行 p = Path() print(type(p)) #<class 'pathlib.WindowsPat…