1

我有一个小的 Python 脚本,它将从文档 A 导入的单词列表与文档 B 中的一组行尾进行比较,以便将不符合这些规则的单词复制到文档 C。示例:

A (word list): 
salir
entrar
leer

B (line endings list):
ir
ar

C (those from A that do not match B):
leer

一般来说,它工作正常,但我意识到它不适用于包含 Unicode 字符的行尾ó- 没有错误消息,一切看起来都很顺利,但列表 C 仍然包含以ó.

这是我的代码的摘录:

inputobj = codecs.open(A, "r")
ruleobj = codecs.open(B, "r")
nomatch = codecs.open(C, "w")

inputtext = inputobj.readlines()
ruletext = ruleobj.readlines()

for line in inputtext:
    x = 0
    line = line.strip()
    for rule in ruletext:
        rule = rule.strip()
        if line.endswith(rule):
            print "rule", rule, " in line", line
            x= x+1
    if x == 0:
        nomatchlist.append(line)

for i in notmatchlist:
    print >> nomatch, i
4

1 回答 1

0

我在本地尝试了一些代码。它适用于'ó'。你能检查一下 A 和 B 的编码是否相同吗?

于 2013-10-10T08:36:26.907 回答