python 读取csv文件 转为UTF-8
时间: 2023-06-21 11:24:51 浏览: 535
要将 CSV 文件转换为 UTF-8 编码格式,可以按照以下步骤操作:
1. 使用 Python 内置的 `csv` 模块读取 CSV 文件。例如:
```
import csv
with open('file.csv', 'r', encoding='原始编码格式') as f:
reader = csv.reader(f)
for row in reader:
# 处理每一行数据
```
2. 将读取到的数据转换为 UTF-8 编码格式。例如:
```
import csv
with open('file.csv', 'r', encoding='原始编码格式') as f:
reader = csv.reader((line.encode('utf-8') for line in f), delimiter=',')
for row in reader:
# 处理每一行数据
```
在这个示例中,我们使用了一个生成器表达式将每一行数据转换为 UTF-8 编码格式,并将转换后的数据传递给 `csv.reader` 对象。此外,我们还指定了 CSV 文件中使用的分隔符为逗号(默认值为英文半角逗号)。
3. 对转换后的数据进行处理或者写入新的 CSV 文件。例如:
```
import csv
with open('file.csv', 'r', encoding='原始编码格式') as f:
reader = csv.reader((line.encode('utf-8') for line in f), delimiter=',')
with open('new_file.csv', 'w', encoding='utf-8', newline='') as f_out:
writer = csv.writer(f_out)
for row in reader:
# 处理每一行数据
# ...
# 将处理后的数据写入新的 CSV 文件
writer.writerow(processed_row)
```
在这个示例中,我们使用了一个新的 `csv.writer` 对象将处理后的数据写入到一个新的 CSV 文件中。需要注意的是,我们在打开文件时指定的编码格式为 UTF-8,并将 `newline` 参数设置为空字符串,以避免写入的数据中出现多余的空行。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)