python文件保存中文乱码
时间: 2023-10-29 08:58:16 浏览: 209
在Python中保存文件时出现中文乱码的问题是比较常见的。根据你提供的引用内容,可以使用以下几种方法来解决中文乱码问题。
方法一:指定编码方式
在使用open()方法打开文件时,可以通过指定encoding参数为'utf-8'来告诉Python使用UTF-8编码方式来处理文件中的字符。例如,在保存JSON文件时,可以使用以下代码进行指定编码方式的保存:
```python
import json
def save(info):
with open('info.json', 'w', encoding='utf-8') as f:
json.dump(info, f, ensure_ascii=False, indent=1)
```
在上述代码中,通过指定encoding='utf-8'来告诉Python使用UTF-8编码方式来保存文件,同时设置ensure_ascii=False来确保JSON序列化时不将Unicode编码为ASCII。
方法二:关闭ASCII码集的识别
另一种解决中文乱码的方法是关闭ASCII码集的识别,这样就能够原始地写入中文字符。例如,可以使用以下代码来关闭ASCII码集的识别并保存JSON文件:
```python
import json
if __name__ == '__main__':
path = './data.json'
with open(path, 'w', encoding='utf-8') as f:
di = { "key": '这是一次屠杀' }
json.dump(di, fp=f, ensure_ascii=False)
```
在上述代码中,通过设置ensure_ascii=False来关闭ASCII码集的识别,让其原始写入中文字符。
综上所述,你可以通过指定编码方式为'utf-8'或关闭ASCII码集的识别来解决Python文件保存中文乱码的问题。希望能帮到你。
阅读全文