0

私はPythonだけでなく、プログラミング全般も初めてです。2 つのテキスト ファイルがあります。それぞれが新しい行に各項目を含むリストです。

各リスト内で、大文字と小文字の区別と特定の句読点 ("、"、"-"、"\n") を無視して、一致する文字列を見つけようとしています。これは私がこれまでに持っているものです:

基本的に、リスト項目を翻訳して2つを比較する必要があります

List1.txt

Proper Title Here
A Title Here, crap
B Title Here-more crap
C Title Here
D Title Here
E Title Here

List2.txt

Proper Title Here
B Title Here-more crap
Q Title List item

コード:

import re 
list1_file = open("list1.txt", "r")
list2_file = open("list2.txt", "r")

list1 = list1_file.readlines()
list2 = list2_file.readlines()

for eachlistone in list1:
    list1nosp = eachlistone.replace(" ", "")

for eachlisttwo in list2:
    list2nosp = eachlisttwo.replace(" ", "")

出力する必要があります:

Proper Title Here
B Title Here-more crap
4

1 に答える 1

0

最初のリストを読み込み、不要な句読点を削除します

data = file1.read()
data = data.lower() #make it all lowercase
data = re.sub("[,-]","",data) #replace unwanted punctuation
list1= data.splitlines() 

2番目のリストについても同じことを行います

data = file2.read()
data = data.lower() #make it all lowercase
data = re.sub("[,-]","",data) #replace unwanted punctuation
list2= data.splitlines() 

次に、2つのリストの交点を印刷します

print "\n".join(set(list1).intersection(list2))
于 2013-04-19T19:38:21.907 に答える