首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python2.7 mysql阿拉伯字符显示如\xd9\x88\xd9\x88\xd8\xac\xd8 \xd8\xa7\xd9\x84\

python2.7 mysql阿拉伯字符显示如\xd9\x88\xd9\x88\xd8\xac\xd8 \xd8\xa7\xd9\x84\
EN

Stack Overflow用户
提问于 2017-02-11 00:35:20
回答 2查看 205关注 0票数 0

当我拿到我的脚本时,我有一个问题

代码语言:javascript
复制
from bs4 import BeautifulSoup
import html
import chardet
import time
start_time = time.time()
import MySQLdb
import MySQLdb.converters as conv
import MySQLdb.constants as const
import datetime
# connect
db = MySQLdb.connect(host="localhost", user="985632", use_unicode=True, passwd="azerty",
db="bog_ch" , charset='utf8', init_command='SET NAMES UTF8')
cursor = db.cursor()

# execute SQL select statement
query = "SELECT * FROM articles Limit 5"
cursor.execute(query)
a = []
# commit your changes
numrows = int(cursor.rowcount)
rows = [x for x in cursor ]
for i in rows:
    for b in i:
        a.append(b)
print a         

我得到了这个

代码语言:javascript
复制
</span></p>\r\n<p class="a" style="text-align: right;" dir="RTL"><span style="font-size: 21px;" lang="AR-SY">\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627\u062d\u062b\u0627\u0646 \u0623\u0646 &ldquo;\u0641\u0627\u064a\u0628\u0631&rdquo; \u062a\u0642\u0648\u0645 \u0628\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0641\u064a \u062e\u0648\u0627\u062f\u0645\u0647\u0627 \u0644\u0645\u062f\u0629 \u0623\u0633\u0628\u0648\u0639 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644. \u0648\u0623\u0636\u0627\u0641 \u0623\u062d\u062f\u0647\u0645\u0627 \u0623\u0646\u0647 \u0644\u0627 \u064a\u0648\u062c\u062f \u0623\u0633\u0644\u0648\u0628 \u0645\u0635\u0627\u062f\u0642\u0629 \u0645\u0633\u062a\u062e\u062f\u0645\u060c \u0645\u0627 \u064a\u0639\u0646\u064a \u0623\u0646 \u0628\u0625\u0645\u0643\u0627\u0646 \u0627\u0644\u062c\u0645\u064a\u0639 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0647\u0630\u0647 \u0627\u0644\u0631\u0648\u0627\u0628\u0637 \u0648\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u062a\u0644\u0643 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a\u0647\u0627 \u0648\u0627\u0644\u0642\u064a\u0627\u0645 \u0628\u0645\u0627 \u064a\u0634\u0627\u0621.</span></p>', u'1', u'', None, datetime.datetime(2015, 6, 9, 0, 36, 30), 9L, 0L, 0L, 1L, u'viber.png', u'User GEEKS', 1L, u'', u'', u'']

我想把它转换成阿拉伯语,就像

أفضلالمهووسينايفونسامسونغغوغل7

EN

回答 2

Stack Overflow用户

发布于 2017-02-11 07:50:56

您正在打印列表a。这是行不通的,而且在任何情况下,您可能都不想将所有这些额外的crud输出到您的网页(9L, 0L, 0L, 1L, u'viber.png', ...etc...)

如果希望显示实际的Unicode字符,只需打印字符串元素即可。

例如:

代码语言:javascript
复制
>>> my_list = [u'\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627' \
               u'\u062d\u062b\u0627\u0646', 123]
>>> print my_list        # <- this won't work
[u'\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627\u062d\u062b\u0627\u0646', 123]
>>> print my_list[0]     # <- but this will
ووجد الباحثان
票数 2
EN

Stack Overflow用户

发布于 2017-02-11 05:31:23

这看起来像是Unicode显示问题。首先,确保您使用的IDE支持阿拉伯字符(据我所知最好的是Spyder)。其次,在Python3.5中尝试一下,它可以更有效地处理Unicode。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42164313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档