gpt4 book ai didi

python - python中的特殊字符

转载 作者:太空宇宙 更新时间:2023-11-03 15:46:50 24 4
gpt4 key购买 nike

我有一个文件,其中包含很多有关诺贝尔奖的条目。然后,我将该文件转换为如下列表:

file = open(path, 'r')
file.readline()
content = []
for line in file:
line = line.replace('\n', '')
content.append(line.split(';'))

content = check(content, 'röntgen')

之后,我有一个函数接受该列表和其他参数,并检查该列表是否包含该参数。然而,如果参数采用像 Ö 这样的特殊字符,它就不起作用,因为当读取文件时,python 会将其保存为: ¶

def check(content, attr):
reducedList = []
for i in range(len(content)):
curr = content[i][4]
if curr.find(attr) != -1:
reducedList.append(content[i])
return reducedList

与:

curr = 'voor hun verdiensten op het gebied van de analyse van de kristalstructuur door middel van röntgenstraling'
attr = 'röntgen'

我尝试过用 utf-8 转换它,但这似乎没有帮助。有人有解决办法吗?

最佳答案

发生这种情况是因为您使用的是 Python 2(可能在 Windows 上),并且您的文件采用 utf-8 而不是 latin-1 编码。

您所做的最好的事情是了解正在发生的事情,而不是尝试随机修复它(包括对您的问题的第一条评论:它们都是随机建议)。所以,停止你正在尝试做的事情。

阅读此内容: https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/

然后,如果可以的话,切换到 Python3 - 这应该会自动处理大多数问题。

如果不能,您必须手动正确处理文本解码和重新编码 - 概念位于上面的链接中。假设您的输入文件采用 utf-8 格式

关于python - python中的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41679449/

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