Python中希腊字母的Unicode代码

时间:2016-05-21 10:26:53

标签: python mysql

我在python 2.7版本中运行此代码。

import sys, os
sys.path.append(os.path.join(os.path.split(os.path.abspath(__file__))[0], 'lib'))
from bottle import route, run, static_file, request
import pymysql as db
import settings

con = db.connect(
    settings.mysql_host, 
    settings.mysql_user, 
    settings.mysql_passwd, 
    settings.mysql_schema,
    charset='utf8',
    use_unicode=True)

cur = con.cursor()

cur.execute("SELECT tragoudi.titlos, tragoudi.etos_par, cd_production.etaireia FROM tragoudi JOIN singer_prod ON tragoudi.titlos=singer_prod.title JOIN cd_production ON singer_prod.cd=cd_production.code_cd GROUP BY tragoudi.titlos HAVING tragoudi.titlos LIKE %s AND tragoudi.etos_par LIKE %s AND cd_production.etaireia LIKE %s",("ΑΓΩΝΙΑ","1978","SONY"))
con.commit()

#cur.execute("SELECT * FROM kalitexnis")


for row in cur.fetchall():
    table = row[:]

print table
con.close()

它给了我一个结果:

(u'\u0391\u0393\u03a9\u039d\u0399\u0391', 1978, u'SONY')

这是正确的,因为'ΑΓΩΝΙΑ这个词的unicode是A=\u0391 Γ=\u0393等。 所以我的问题是,如果我print table得到一个结果

(u'ΑΓΩΝΙΑ', 1978, u'SONY')

1 个答案:

答案 0 :(得分:0)

Python 2使用u作为前缀来告诉它它是一个Unicode字符串,因此如果按元素打印list元素,它应该正确打印出来。

所以:

for x in table
    print x