test4.txt
test_simi.txt
对于每个test4.txt中的单词,按照一定的规则在test_simi.txt中找对应的值,写了以下代码,可是输出却是空,该怎么解决?
#!/usr/bin/python
#coding:utf-8
# import os
#连接单词的首字母
def cat_first(concept_list):
first_alpha = []
lenth_concept=len(concept_list)
for i in concept_list[0:lenth_concept]:
first_alpha.append(i[0])
x = 0
for i in first_alpha[:len(first_alpha)]:
if i.isupper():
x += 1
if x == len(first_alpha):
first_cat = ''.join(first_alpha)
return first_cat
if __name__ == '__main__':
with open('test4.txt','r') as f,open('test_simi.txt','r') as c:
for line in f:
for word in line.split():
# word_simi={}
word1 = word.capitalize()
word_list = []
word_list.append(word)
word_list.append(word1)
for word in word_list[:len(word_list)]:
label_simi = {}
# item_word_simi = {}
for line1 in c:
line_list=[]
for item in line1.split():
line_list.append(item)
# for label,concept,RE,X_Similarity in line_list[0:4]:
label=line_list[0]
concept=line_list[1]
RE=line_list[2]
X_Similarity=line_list[3]
concept_list=[]
for item in concept.split('_'):
if item == 'of':
pass
else:
concept_list.append(item)
lenth_concept = len(concept_list)
for item in concept_list[:lenth_concept]:
if len(word) <= 6:
if lenth_concept <= 2:
if len(item) <= 6:
if word==item:
label_simi.update({label:RE})
else:
part_item=item[:6]
if word==part_item:
label_simi.update({label: RE})
else:
# part_word = word[:5]
first_cat=cat_first(concept_list)
if word == first_cat:
label_simi.update({label: RE})
else:
if lenth_concept <= 2:
# for item in concept_list[:lenth_concept]:
if len(item) <= 6:
part_word = word[:5]
if part_word == item:
label_simi.update({label: RE})
else:
part_word = word[:5]
part_item = item[:5]
if part_word == part_item:
label_simi.update({label: RE})
else:
part_word = word[:5]
first_cat = cat_first(concept_list)
if part_word == first_cat:
label_simi.update({label: RE})
print label_simi