現在、テキストファイルと比較して、両方のファイルに共通の単語があるかどうかを確認しようとしています。
テキストファイルは次のとおりです
ENGLISH.TXT
circle
table
year
competition
FRENCH.TXT
bien
competition
merci
air
table
私の現在のコードはそれらを印刷させています、私はすべての不必要なsquirly括弧などを削除しました、しかし私はそれらを異なる行に印刷させることができません。
List = open("english.txt").readlines()
List2 = open("french.txt").readlines()
anb = set(List) & set(List2)
anb = str(anb)
anb = (str(anb)[1:-1])
anb = anb.replace("'","")
anb = anb.replace(",","")
anb = anb.replace('\\n',"")
print(anb)
出力は、両方の結果を新しい行に分離することが期待されます。
Currently Happening:
Competition Table
Expected:
Competition
Table
前もって感謝します!-Xphoon
こんにちは私はあなたが良い習慣として2つのことを試みることを提案します:1)ファイルを開くために「with」を使用してください
with open('english.txt', 'r') as englishfile, open('french.txt', 'r') as frenchfile:
##your python operations for the file
2)Python 3を使用している場合は、「f-String」の機会を使用してみてください。
print(f"Hello\nWorld!")
「open()」と「withopen()」を使用して読み取られたファイルこの投稿では、「with」ステートメントを使用する理由を非常によく説明しています:)さらに、変数を出力する場合は、f文字列に加えて次のようにします。
print(f"{variable[index]}\n variable2[index2]}")
印刷する必要があります:こんにちはと世界!別の行で
セットとリスト間の変換を含む1つの解決策は次のとおりです。
with open('english.txt', 'r') as englishfile, open('french.txt', 'r') as frenchfile:
english_words = englishfile.readlines()
english_words = [word.strip('\n') for word in english_words]
french_words = frenchfile.readlines()
french_words = [word.strip('\n') for word in french_words]
anb = set(english_words) & set(french_words)
anb_list = [item for item in anb]
for item in anb_list:
print(item)
単語をリストに保持することによる別の解決策は次のとおりです。
with open('english.txt', 'r') as englishfile, open('french.txt', 'r') as frenchfile:
english_words = englishfile.readlines()
english_words = [word.strip('\n') for word in english_words]
french_words = frenchfile.readlines()
french_words = [word.strip('\n') for word in french_words]
for english_word in english_words:
for french_word in french_words:
if english_word == french_word:
print(english_word)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加