以下のコードでは、プログラムはすでに存在するCSVを読み取ります。2番目のCSVファイルが表示され、コードは出力CSVの新しい行を抽出して追加する必要があります。コードは正しく機能しています。しかし、私はよりクリーンでより良いコードを書くことが可能かどうか知りたいです。
どうすればコードをより適切にクリーンアップできますか?
input_file = 'Cached_data//cache_2.csv'
output_file = 'Output//current-date_output.csv'
with open(output_file, 'r') as out_file:
lines_out = []
for line in out_file:
lines_out.append(line)
with open(input_file, 'r') as in_file, open(output_file, 'a+') as out_file:
for line in in_file:
if line in lines_out:
continue
else:
out_file.write(line)
コンテンツcache_2.csv:
"line 5"
"line 6"
"line 7"
"line 8"
output.csvの内容:
"line 1"
"line 2"
"line 3"
"line 4"
簡単な解決策は次のとおりです。
with open(output_file, "r+") as out_file, open(input_file, "r") as inp_file:
out_content = out_file.readlines()
out_file.writelines([line for line in inp_file.readlines() if line not in out_content])
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加