gpt4 book ai didi

Python 字符串打印为 [u'String']

转载 作者:IT老高 更新时间:2023-10-28 12:33:11 25 4
gpt4 key购买 nike

这肯定是一件容易的事,但它真的让我很烦。

我有一个脚本可以读取网页并使用 Beautiful Soup解析它。我从 soup 中提取所有链接,因为我的最终目标是打印出 link.contents。

我正在解析的所有文本都是 ASCII。我知道 Python 将字符串视为 unicode,我相信这非常方便,只是在我的小脚本中没有用。

每次我打印出一个包含“字符串”的变量时,我都会将 [u'String'] 打印到屏幕上。有没有一种简单的方法可以将它恢复为 ascii 或者我应该编写一个正则表达式来剥离它?

最佳答案

[u'ABC'] 将是 unicode 字符串的单元素列表。 Beautiful Soup always produces Unicode .因此,您需要将列表转换为单个 unicode 字符串,然后将其转换为 ASCII。

我不知道你是如何得到单元素列表的;内容成员将是字符串和标签的列表,这显然不是您所拥有的。假设你真的总是得到一个包含单个元素的列表,并且你的测试真的是 only ASCII 你会使用这个:

 soup[0].encode("ascii")

但是,请仔细检查您的数据是否真的是 ASCII。这是相当罕见的。更有可能是 latin-1 或 utf-8。

 soup[0].encode("latin-1")


soup[0].encode("utf-8")

或者你问 Beautiful Soup 原来的编码是什么,然后用这个编码取回:

 soup[0].encode(soup.originalEncoding)

关于Python 字符串打印为 [u'String'],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/599625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com