在python中将unicode字符列表转换为希伯来语字符串

在python中将unicode字符列表转换为希伯来语字符串,python,unicode,html-parsing,Python,Unicode,Html Parsing,按照线程解决方案,我成功地获得了一系列列表,每个列表看起来都像: [u'\u05ea\u05d0\u05de\u05d9\u05df\u05dc\u05d9'] 我假设它们是unicode字符,但由于某种原因,我无法将它们转换回希伯来语 我在链接的评论中尝试了建议的解决方案。我也试着使用'.join,但没用。我得到的错误是: 错误类型:exceptions.UnicodeEncodeError 22:42:15 T:2806414192 M:2425589760错误:错误内容:“ascii”编解

按照线程解决方案,我成功地获得了一系列列表,每个列表看起来都像:

[u'\u05ea\u05d0\u05de\u05d9\u05df\u05dc\u05d9']

我假设它们是unicode字符,但由于某种原因,我无法将它们转换回希伯来语

我在链接的评论中尝试了建议的解决方案。我也试着使用
'.join
,但没用。我得到的错误是:

错误类型:exceptions.UnicodeEncodeError 22:42:15 T:2806414192
M:2425589760错误:错误内容:“ascii”编解码器无法编码
位置0-4中的字符:序号不在范围内(128)

我试图用
unicode()
来包装东西,但得到的结果与上面的示例相同

我如何做到这一点

注意:
我正在尝试解析

编辑:
我正在尝试使用
join
将列表转换为字符串,然后打印它。以下是相关的代码图片:

soup = BeautifulStoneSoup(link, convertEntities=BeautifulStoneSoup.XML_ENTITIES)
    programs = soup('ul')
    for i,prog in enumerate(programs):
        if i==(4+getLetterValue(name)):
            j = 0
            while j < len(prog('li')):
                li = prog('li')[j]
        link = li('a')[0]
        url = link['href']
                text = link.contents
                print ''.join(text)
soup=BeautifulStoneSoup(链接,convertEntities=BeautifulStoneSoup.XML\u实体)
程序=汤('ul')
对于i,枚举中的prog(程序):
如果i==(4+getLetterValue(名称)):
j=0
而j

link
是一个字符串。和
getLetterValue(name)
返回一个整数,该整数告诉html文档中的位置。

这是一个
unicode
字符串,是希伯来语,您甚至可以直接在Python交互式shell上打印它。e、 g:

>>> print u'\u05ea\u05d0\u05de\u05d9\u05df \u05dc\u05d9'
תאמין לי
如果出于某种原因确实需要将其转换为原始字节字符串(一个
str
对象),则必须指定字节字符串的编码,因为文本可以用许多不同的编码表示

简短回答:假设您想使用UTF-8编码文本,您可以使用:

your_unicode_text.encode('utf-8')
如果要使用不同的编码,只需更改上面的编码名称即可

有关Python如何处理Unicode文本和常见问题的参考,请参阅:


另请参见Unicode和字符串编码的另一简短说明。

您所说的“将它们转换回希伯来语”是什么意思?例如,要将它们写入utf-8编码文件吗?该列表中已经是unicode字符串,因此,
u'…
。请详细说明你所说的“将它们转换回希伯来语”是什么意思。你能为你正在尝试做的事情发布一些代码吗?将上面的列表分配给一个变量并打印出来,我会觉得它像希伯来语…对我来说,这可以打印出很好的
[u'\u05ea\u05d0\u05de\u05d9\u05df\u05dc\u05d9']>>打印l[0]我想通过xbmc.org插件在字符串上显示它们。目前,问题在于打印,实际上,它将内容打印到文件中,而不是屏幕上