书名:耶稣基督的儿子,大卫,儿子,亚伯拉罕,雅各,犹大,他的兄弟,法勒斯,亚米拿达 字表B: akwụkwọjizọs kraịst nwa devid nwa ebreham jekọb juda yaụmụnne pirez aminadab file.txt A:
file.txt B:
我有两个以上的单词列表(如A& B)的两个不同的。语言。这两个词都是按顺序相互翻译的。我的任务是通过两种语言的两个单独的files.txt (如word-list A到file.txt A)运行这些单词列表,反之亦然,然后为这两个txt文件返回一行,每一行都将包含两个单词列表的索引号,它们在txt的每一行上都可以找到,如:
import sys
def wordlist(filename):
wordlist = []
with open(filename, 'rb') as f:
for line in f:
wordlist.append(line)
return wordlist
eng = []
for lines in open('eng_try.txt', 'rb'):
line = lines.strip()
eng.append(line)
igb = []
for lines in open('igb_try.txt', 'rb'):
line = lines.strip()
igb.append(line)
i = 0
while i < len(eng):
eng_igb_verse_pair = eng[i] + " " + igb[i]
line = eng_igb_verse_pair.strip().split()
for n in range(0, len(wordlist('eng_wordlist.txt'))):
eng_word = wordlist('eng_wordlist.txt').pop(n)
igb_word = wordlist('igb_wordlist.txt').pop(n)
if eng_word in line and igb_word in line:
print '{0} {1}:{2}'.format(i, line.index[eng_word], line.index[igb_word])
i += 1这个实际上是空的。我知道我的问题在节目的最后一部分。有人能帮忙吗。我不是那么有经验的python程序员。如果我没有很好地解释我的解释,很抱歉。
发布于 2013-10-12 23:10:40
你的意思是这样的:
import sys
def checkLine(line_eng, line_igb):
eng_words = line_eng.split()
igb_words = line_igb.split()
for word in eng_words:
if word in eng:
igb_word = igb[eng.index(word)]
print "%d:%d" % ( eng_words.index(word)+1, igb_words.index(igb_word)+1),
def linelist(filename):
lineslist = []
for line in open(filename, 'rb'):
lineslist.append(line)
return lineslist
eng = []
for lines in open('eng_try.txt', 'rb'):
line = lines.strip()
for w in line.split():
eng.append(w)
igb = []
for lines in open('igb_try.txt', 'rb'):
line = lines.strip()
for w in line.split():
igb.append(w)
eng_lines = linelist("eng_wordlist.txt")
igb_lines = linelist("igb_wordlist.txt")
for n in range(0, len(eng_lines)):
print "%d. " % (n+1),
checkLine(eng_lines[n],igb_lines[n])
print关于你的档案我得到了结果:
1. 2:1 7:6 8:7 10:9 12:10 10:9 16:13
2. 1:1 11:7 11:7 17:11 19:14 20:13伯拉西特·亨德森
https://stackoverflow.com/questions/19339347
复制相似问题