私は2つのリストを持っており、一致するものを削除して別のものを残したいと思います。 2つのリストは、 "アラビア語" である場合に2つのリストに異なる単語が見つかりました
def check_synonym(text):
tokens=regexp_tokenize(text, r'[،؟!.؛\s+]\s*', gaps=True)
based_text= ' '.join(cursor.execute('SELECT request FROM Male_Conversation_Engine WHERE request REGEXP?',[tokens[0]]).fetchone())
based_tokens=regexp_tokenize(str(based_text), r'[،؟!.؛\s+]\s*', gaps=True)
for w1 in based_tokens:
for w2 in tokens:
if w1 == w2:
based_tokens.remove(w1),tokens.remove(w2)
return list
:
tokens = ['هذا','الجهاز','الجميل']
based_tokens = ['هذا','الجهاز','جيد']
は、出力は次のようになります。
tokens = ['الجميل']
based_tokens = ['جيد']
実際の出力:
tokens = ['الجهاز','جميل']
based_tokens = ['الجهاز','جيد']
ここ コードです
サイドのみ最初の要素 'هذا'を参照し、残りのリストを返します。 (のpython3を使用して)
[Pythonの、計算リスト差](http://stackoverflow.com/questions/6486450/python-compute-list-difference) – xbonez