Python的文件操作与异常处理
发布时间: 2024-01-09 05:59:49 阅读量: 53 订阅数: 47
Educoder Python 计算思维训练——文件操作与异常处理
# 1. 文件操作入门
### 1.1 基本文件操作
在Python中,文件操作是非常常见的任务之一。你可以使用Python的内置函数来对文件进行基本的操作,例如创建、打开、读取、写入和关闭文件。
#### 文件的创建
在Python中创建文件非常简单,你可以使用`open()`函数,并传入文件名以及操作模式来创建文件。操作模式可以是`"w"`表示写入模式,也可以是`"a"`表示追加模式。以下是一个创建文件并写入数据的示例:
```python
file = open("example.txt", "w")
file.write("Hello, world!")
file.close()
```
#### 文件的打开与关闭
要打开一个已经存在的文件,你可以使用`open()`函数,并传入文件名以及操作模式。打开文件后,记得最后要使用`close()`方法来关闭文件流,以释放相关资源。以下是一个打开和关闭文件的示例:
```python
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
```
#### 文件的读取与写入
文件的读取和写入是文件操作中非常基础和常见的操作,Python提供了多种方法来读取和写入文件。
##### 文件的读取
要读取文件的内容,可以使用以下方法:
- `read()`: 读取整个文件的内容。
- `readline()`: 逐行读取文件的内容。
- `readlines()`: 将文件的每一行作为一个元素,返回一个包含所有行的列表。
以下是一个文件读取的示例:
```python
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
```
##### 文件的写入
要将数据写入文件,可以使用以下方法:
- `write()`: 将指定的字符串写入文件。
- `writelines()`: 将一个包含多行字符串的列表写入文件。
以下是一个文件写入的示例:
```python
file = open("example.txt", "w")
file.write("Hello, world!")
file.close()
```
以上就是文件操作的入门知识,下面我们将进一步学习文件操作的高级技巧。
# 2.
## 第二章:文件操作进阶
### 2.1 文件路径操作
文件操作并不仅仅停留在基本的文件读取和写入上,我们还需要对文件路径进行操作,以便更好地管理文件。
在Python中,我们可以使用`os`模块来进行文件路径操作。以下是几个常用的文件路径操作函数:
```python
import os
# 获取当前工作目录
cwd = os.getcwd()
# 连接路径
path1 = os.path.join("dir1", "dir2", "file.txt")
# 获取目录名与文件名
dirname = os.path.dirname(path1)
filename = os.path.basename(path1)
# 判断路径是否存在
exists = os.path.exists(path1)
# 判断是否为文件或目录
isfile = os.path.isfile(path1)
isdir = os.path.isdir(path1)
# 分割路径
split = os.path.split(path1)
```
代码解释:
- `os.getcwd()`可以获取当前工作目录的路径。
- `os.path.join()`可以将多个路径拼接成一个完整的路径。
- `os.path.dirname()`可以获取路径中的目录名。
- `os.path.basename()`可以获取路径中的文件名。
- `os.path.exists()`可以判断路径是否存在。
- `os.path.isfile()`可以判断给定路径是否为文件。
- `os.path.isdir()`可以判断给定路径是否为目录。
- `os.path.split()`可以将路径分割为目录和文件名的组合。
### 2.2 文件的复制与移动
有时候我们需要将文件从一个路径复制到另一个路径,或者将文件移动到其他目录中。Python提供了`shutil`模块来进行文件的拷贝和移动操作。
以下是文件复制和移动的示例代码:
```python
import shutil
# 复制文件到新路径
shutil.copy("source.txt", "destination.txt")
# 移动文件到新目录
shutil.move("file.txt", "newdir/file.txt")
```
代码解释:
- `shutil.copy()`用于将一个文件复制到另一个路径。
- `shutil.move()`用于将一个文件移动到另一个目录。
### 2.3 文件的重命名与删除
有时候我们需要对文件进行重命名或删除操作。Python提供了`os`模块来进行文件的重命名和删除操作。
以下是文件重命名和删除的示例代码:
```python
import os
# 重命名文件
os.rename("old_file.txt", "new_file.txt")
# 删除文件
os.remove("file.txt")
```
代码解
0
0