我正在使用BeautifulSoup从HTML提取一些文本,但是我只是想不出如何正确地将其打印到屏幕(或与此相关的文件)上。
这是我的包含文本的类的样子:
class Thread(object):
def __init__(self, title, author, date, content = u""):
self.title = title
self.author = author
self.date = date
self.content = content
self.replies = []
def __unicode__(self):
s = u""
for k, v in self.__dict__.items():
s += u"%s = %s " % (k, v)
return s
def __repr__(self):
return repr(unicode(self))
__str__ = __repr__
当尝试打印一个实例时,Thread
这是我在控制台上看到的:
~/python-tests $ python test.py
u'date = 21:01 03/02/11 content = author = \u05d3"\u05e8 \u05d9\u05d5\u05e0\u05d9 \u05e1\u05d8\u05d0\u05e0\u05e6\'\u05e1\u05e7\u05d5 replies = [] title = \u05de\u05d1\u05e0\u05d4 \u05d4\u05de\u05d1\u05d7\u05df '
无论我尝试什么,都无法获得想要的输出(上面的文本应该是希伯来语)。我的最终目标是序列化Thread
到文件(使用json或pickle)并能够将其读回。
我在Ubuntu 10.10上使用Python 2.6.6运行它。
要将Unicode字符串输出到文件(或控制台),您需要选择 文本编码
。在Python中,默认的文本编码是ASCII,但是要支持希伯来语字符,您需要使用其他编码,例如UTF-8:
s = unicode(your_object).encode('utf8')
f.write(s)
问题内容: 我遇到了这行遗留代码,我试图找出这些遗留代码: 据我了解,它是使用相同的charSet进行编码和解码。 这与以下内容有何不同? 在任何情况下,两条生产线的输出将不同? ps:只是要澄清一下,是的,我知道Joel Spolsky撰写的关于编码 的出色文章! 问题答案: 这可能是很复杂的方式 这缩短了String,而所使用的基础char []则更长。 但是,更具体地说,将检查每个字符是否都
我目前的logClass有一个问题,无法打印umlauts“üäß”,我创建这个命令是为了将控制台上的每个字符串打印到JTextPane。 我已经在方法“控制台”上将PrintStream设置为使用“UTF-8”,并且我已经尝试了不同的字体,但是在尝试打印特殊字符时,我总是会出现错误字符。有人会对如何解决这个问题提出建议吗? 这是我的代码:
我正在为一位位于巴西的客户开发一个网站。他的网站的一部分显示了用户的反馈/评论。 以下是一个例子: 正确版本: “这是我的一分钟!” 当我向用户输出时,显示如下内容: 不正确的版本: “这是我的一分钟!” 我将这些评论保存到mySQL数据库(Hostgator),并将数据库排序规则设置为“utf8\U unicode\U ci”。 在超文本标记语言的顶部,我声明了以下内容: 我使用Laravel
问题内容: 我有一个带有“ñ”字符的字符串,并且我有一些问题。我需要将此字符串编码为UTF-8编码。我已经通过这种方式尝试过,但是没有用: 如何将该字符串编码为utf-8? 问题答案: Java中的对象使用无法修改的UTF-16编码。 唯一可以使用不同编码的是。因此,如果你需要UTF-8数据,则需要一个。如果你有一个包含意外数据的,则问题出在较早的地方,该错误地将一些二进制数据错误地转换为a (即
问题内容: 如何使用Android解码utf-8字符串?我尝试使用此命令,但输出与输入相同: 问题答案: 字符串不需要编码。它只是一个Unicode字符序列。 要将字符串转换为字节序列时需要进行 编码 。您选择的字符集(UTF-8,cp1255等)确定了Character-> Byte映射。请注意,字符不必转换为单个字节。在大多数字符集中,大多数Unicode字符都转换为至少两个字节。 字符串的编
问题内容: 这个问题已经在这里有了答案 : UTF-8贯穿始终 (15个答案) 5年前关闭。 寻求 我正在寻找具有重音符号的行。列()的编码为。 编码 以下查询使用phpMyAdmin 返回: 以下显示期望值(称为函数): 显示的值: 然后使用以下代码对数组进行编码: 问题 Web浏览器收到以下值: 代替: (或等效的编码形式。) 题 文档指出可以在UTF-8上使用。我可以看到将值从LATIN1编