您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python文件及目录处理的方法

51自学网 2022-02-21 10:46:00
  python
这篇教程Python文件及目录处理的方法写得很实用,希望能帮到您。

下面先来介绍python目录处理相关方法。

一、目录操作

1. 获取当前代码路径

test_folder.pyimport osimport sysprint(__file__)print(sys.argv[0])print(os.path.realpath(__file__))print(os.path.abspath(sys.argv[0]))

Out:

D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py
D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py
D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py
D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py

2. 获取当前文件__file__的所在目录

print(os.getcwd())print(os.path.dirname(os.path.realpath(__file__)))print(os.path.split(os.path.realpath(__file__))[0])path = os.path.dirname(os.path.realpath(__file__))

Out:

D:/ProgramWorkspace/PythonNotes/03-File-Handling
D:/ProgramWorkspace/PythonNotes/03-File-Handling
D:/ProgramWorkspace/PythonNotes/03-File-Handling

3. 获取当前文件名名称

print(os.path.basename(sys.argv[0])) # 当前文件名名称print(os.path.basename(__file__))

Out:

test_folder.py
test_folder.py

4. 拼接路径

path = os.path.dirname(os.path.realpath(__file__))filename = os.path.basename(__file__)abspath = os.path.join(path, filename)print(abspath)

Out:

D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py

5. 创建目录

判断目录是否存在:

os.path.exists(path)

创建目录:

if not os.path.exists(path):     print(f"创建文件夹: {path}")    os.makedirs(path)

二、文件操作

1. 创建文本文件

text = "Hello World!"newfilepath = os.path.join(path, "newfile.txt")file = open(newfilepath, 'w')file.write(text)  # 写入内容信息file.close()

2. 判断文件是否存在

print(os.path.isfile(path)) print(os.path.isfile(newfilepath))print(os.path.exists(newfilepath))

Out:

False
True
True

os.path.isfile 用于判断是否为文件且是否存在,os.path.exists 也可以用于判断文件是否存在,但还是建议使用os.path.isfile 判断文件,os.path.exists 判断目录是否存在。比如,某个文件为newfile,使用这两个方法都会返回True,无法判断到底是文件还是目录。

3. 判断文件属性

print(os.access(newfilepath,os.F_OK)) # 文件是否存在print(os.access(newfilepath,os.R_OK)) # 文件是否可读print(os.access(newfilepath,os.W_OK)) # 文件是否可以写入print(os.access(newfilepath,os.X_OK)) # 文件是否有执行权限

Out:

True
True
True
True

os.access(newfilepath,os.F_OK) 也可以用于判断文件是否存在。

4. 打开文件

打开文本文件或者二进制文件可以使用 open() 方法:

f = open(filename, mode)

几种文件打开模式:

  • b:二进制模式
  • t:文本模式(默认)
  • r: 打开存在的文件,读操作(默认)。
  • w: 打开文件,写操作,先前文件中的内容会被删除。如果文件不存在会自动创建。
  • a: 打开文件,追加操作,不会删除先前文件中的内容。如果文件不存在会自动创建。
  • x :创建新文件,写操作,使用此模式打开存在的文件会抛出异常。
  • r+ : 读、写操作,不会删除先前文件中的内容,但是会覆盖内容。
  • w+ :
    python批处理将图片进行放大实例代码
    深人了解Python上下文管理器
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。