我需要翻译一些公司法律表格:
ABC GMBH CO & KG
DEF LIMITED LIABILITY CO
XYZ AD
UVW LTEE
这个想法是GMBH CO & KG = GMBH; LLC = AD = LTEE = LIMITED LIABILITY CO
我写了下面的代码,但它似乎不工作。知道为什么吗?你知道吗
file = open("fake.txt","r").read()
col = file.split("\n")
abbr = ['LLC', 'GMBH']
full = [
('LIMITED LIABILITY COMPANY', 'LIMITED LIABILITY CO', 'LTEE', 'LIMITEE','AD', 'AKTZIONERNO DRUZHESTVO'),
('GMBH CO & KG', 'MBH', 'GESELLSCHAFT MIT BESCHRANKTER HAFTUNG')
]
def trans(col):
i=0
while i<len(abbr):
c=0
while c<len(full[i]):
for x in full[i][c]:
if x in col:
col = col.replace(x,abbr[i])
c+=1
i+=1
return col
print trans(col)
代码中有两个问题:
for将查找每个
full[i][c]
的每个字符,而不是full[i]
的每个元素。你知道吗一旦解决了第一个问题,它将尝试与行的内容完全匹配,而不是子字符串。你知道吗
您可以创建一个字典,其中包含指向与键相同缩写的所有字符串,并将该缩写作为值。然后需要遍历输入行以查找字符串。你知道吗
这就是我的意思:
这张照片:
注意,如果输入行有一个类似
ABC GMBH AD & KG
的字符串,那么这可能不是最佳解决方案。在这种情况下,它会将MBH
替换为GMBH
给予ABC GMBH LLC & KG
,这可能不是您需要的。你知道吗相关问题 更多 >
编程相关推荐