pd.readsql中文乱码
时间: 2023-07-04 08:06:15 浏览: 122
如果在使用 pandas 中的 `pd.read_sql` 函数时出现了中文乱码,可以尝试以下几种方法来解决:
1. 在连接数据库时设置字符集,如:
```python
import pymysql
import pandas as pd
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', database='test', charset='utf8')
df = pd.read_sql('SELECT * FROM table_name', conn)
```
2. 在执行 SQL 语句时指定字符集,如:
```python
import pymysql
import pandas as pd
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', database='test')
df = pd.read_sql('SELECT CONVERT(column_name USING utf8) AS column_name FROM table_name', conn)
```
3. 在读取数据时指定编码格式,如:
```python
import pymysql
import pandas as pd
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', database='test')
df = pd.read_sql('SELECT * FROM table_name', conn)
df['column_name'] = df['column_name'].str.encode('latin1').str.decode('utf8')
```
其中第三种方法可能会比较麻烦,但是可以解决更加复杂的编码问题。