Python中的UnicodeEncodeError与pymysql for.fetchall()一起使用

Python中的UnicodeEncodeError与pymysql for.fetchall()一起使用,mysql,python-3.x,pymysql,Mysql,Python 3.x,Pymysql,我正在尝试制作一个脚本来显示我的数据库,共有8列,所有列都使用utf8\uUnicode\uCI 以下是脚本: import sys import pymysql conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='rfid') cur = conn.cursor() cur.execute("SELECT * FROM cnf1") for r in cur.fetcha

我正在尝试制作一个脚本来显示我的数据库,共有8列,所有列都使用utf8\uUnicode\uCI

以下是脚本:

import sys

import pymysql
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='rfid')

cur = conn.cursor()

cur.execute("SELECT * FROM cnf1")

for r in cur.fetchall():
   print(r)

cur.close()
conn.close()
但在运行脚本时,控制台会抛出以下错误:

(1, 'camilo', 'camilo', 'camilo', 'camilo', 'camilo', 'camilo', 'camilo')
(2, 'Juan', 'Perez', 'Sanchez', '112223330', 'Las Almendras 111', 'juan.perez@correo.com', '12AAA')
(3, 'a', 'a', 'a', 'a', 'a', 'a', 'a')
(4, 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1')
Traceback (most recent call last):
  File "/Users/camilonunezfernandez/Desktop/prueba2.py", line 11, in <module>
(5, 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1')
(6, 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1', 'camilo1')
    print(r)
UnicodeEncodeError: 'ascii' codec can't encode character '\xf1' in position 5: ordinal not in range(128)
[Finished in 0.4s with exit code 1]
[cmd: ['python3', '-u', '/Users/camilonunezfernandez/Desktop/prueba2.py']]
[dir: /Users/camilonunezfernandez/Desktop]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
(1,“卡米洛”、“卡米洛”、“卡米洛”、“卡米洛”、“卡米洛”、“卡米洛”、“卡米洛”、“卡米洛”)
(2)“胡安”、“佩雷斯”、“桑切斯”、“112223330”、“拉斯阿尔门德拉斯111”、“胡安”。perez@correo.com“,”12AAA“)
(3、‘a’、‘a’、‘a’、‘a’、‘a’、‘a’、‘a’、‘a’)
(4,‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’)
回溯(最近一次呼叫最后一次):
文件“/Users/camilonnezfernandez/Desktop/prueb2.py”,第11行,在
(5,‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’)
(6,‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’、‘camilo1’)
印刷品(r)
UnicodeEncodeError:“ascii”编解码器无法对位置5中的字符“\xf1”进行编码:序号不在范围内(128)
[完成时间为0.4s,退出代码为1]
[cmd:['python3','-u','/Users/camilonnezfernandez/Desktop/prueb2.py']
[dir:/Users/camilunez/Desktop]
[路径:/usr/bin:/bin:/usr/sbin:/sbin]
我正在使用Python的3.4版,它运行“pymysql”库来连接我的MySQL数据库

他们知道可能会发生这种错误吗?
多谢各位

尝试传递字符集参数

conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='rfid', charset='utf8')