当前位置: 首页 > 面试题库 >

python中的字符编码,将“ u2019”替换为“

艾翼
2023-03-14
问题内容

我尝试了多种方法将其编码为最终结果"BACK RUSHIN'",其中最重要的字符是右撇号'

我想要一种使用某些Python内置函数达到最终结果的方法,在这些函数中,普通字符串和unicode字符串之间没有区别。

这是我用来检索字符串的代码:
str(unicode(etree.tostring(root.xpath('path')[0],method='text', encoding='utf-8'),errors='ignore')).strip()

结果是:缺少'BACK RUSHIN'撇号'

另一种方法是: root.xpath('path/text()')

结果是:u'BACK RUSHIN\u2019'在python中。

最后,如果我尝试: u'BACK RUSHIN\u2019'.encode('ascii', 'replace')

结果是: 'BACK RUSHIN?'

请不要替换函数,我想使用pythons编解码器库。同样不打印字符串,因为它被保存在变量中。

谢谢


问题答案:
>>> import unidecode
>>> unidecode.unidecode(u'BACK RUSHIN\u2019')
"BACK RUSHIN'"

统一码



 类似资料:
  • 我正在自己学习Java,并使用在线练习进行练习。到目前为止,我只学到了直到方法,所以在这个练习中使用数组超出了我的范围,即使一些在线解决方案使用数组来做我想做的事情。 练习是这样的:让用户输入一个带有元音的字符串。只要有元音字母,就将该元音显示为大写字母。 例如:如果用户输入“苹果”,正确的输出是苹果 到目前为止,我有这段代码: 当我运行我的代码时,例如,输入字符串“苹果”,我得到“苹果”作为我的

  • 问题内容: 这个简单的代码仅尝试用冒号替换分号(在i指定的位置)不起作用: 它给出了错误 如何解决此问题,以冒号代替分号?使用replace不起作用,因为该函数不占用索引-可能有一些我不想替换的分号。 例 在字符串中,我可能有许多分号,例如 我知道我想替换哪些(我在字符串中有索引)。使用替换无法正常工作,因为我无法对其使用索引。 问题答案: python中的字符串是不可变的,因此你不能将它们视为列

  • 问题内容: 我正在使用urllib从网站获取html字符串,并且需要将html文档中的每个单词放入列表中。 这是我到目前为止的代码。我不断收到错误消息。我还复制了以下错误。 这是错误。 问题答案: str.replace是您要执行的操作错误的函数(除了使用不正确之外)。您想用空格代替集合的任何字符,而不是用单个空格代替整个集合(后者是replace的作用)。您可以使用以下翻译: 这将创建一个映射,

  • 问题内容: 在python中,字符串可变吗?该行引发错误 TypeError:’str’对象不支持项目分配 我可以看到原因(因为我可以编写someString [3] =“ test”,这显然是非法的),但是在python中有没有这样做的方法? 问题答案: Python字符串是不可变的,这意味着它们不支持项目或切片分配。您将必须使用ie或其他合适的方法来构建新的字符串。

  • 问题内容: 说我有一个看起来像这样的字符串: 您会注意到字符串中有很多与符号的位置,后跟一个字符(例如“&y”和“&c”)。我需要用字典中的适当值替换这些字符,如下所示: 最快的方法是什么?我可以手动找到所有“&”号,然后遍历字典以更改它们,但这似乎很慢。进行一堆正则表达式替换似乎也很慢(我的实际代码中将有大约30-40对字典)。 任何建议表示赞赏,谢谢。 编辑: 正如在该问题的注释中所指出的那样

  • 问题内容: 有没有更短的方法可以编写以下代码? 注意,我不需要替换那些确切的值。我只是在寻找一种将5条以上的线变成少于5条线的方法 问题答案: 看起来是使用循环的好机会: 如果您不介意括号,则更快的方法是: