ef deal_txt(path):df = pd.read_csv(path, sep='|', header=None, encoding='GB2312', )将上述代码修改成自动判断文本编码格式
时间: 2023-12-02 13:02:06 浏览: 51
可以使用第三方库`chardet`来自动判断文本编码格式,修改后的代码如下:
```python
import chardet
import pandas as pd
def deal_txt(path):
with open(path, 'rb') as f:
result = chardet.detect(f.read()) # 自动检测文本编码格式
df = pd.read_csv(path, sep='|', header=None, encoding=result['encoding'])
return df
```
在这个修改后的代码中,我们首先使用`open()`函数以二进制模式读取文件,并使用`chardet.detect()`函数自动检测文本编码格式并返回一个字典。然后,我们使用字典中的`encoding`键来作为`pd.read_csv()`函数的`encoding`参数,以自动处理不同编码格式的文本文件。
阅读全文