Python の CSV ライブラリまたは同様の手法を使用して CSV ファイルをインラインで変更できますか?
現在、ファイルを処理し、最初の列 (名前フィールド) を更新してフォーマットを変更しています。私のコードの簡略版は次のようになります。
with open('tmpEmployeeDatabase-out.csv', 'w') as csvOutput:
writer = csv.writer(csvOutput, delimiter=',', quotechar='"')
with open('tmpEmployeeDatabase.csv', 'r') as csvFile:
reader = csv.reader(csvFile, delimiter=',', quotechar='"')
for row in reader:
row[0] = row[0].title()
writer.writerow(row)
哲学は機能しますが、ファイルを複製しないようにインライン編集を行うことができるかどうか興味があります。
私は次のことを試しましたが、これは新しいレコードを置き換えるのではなく、ファイルの最後に追加します。
with open('tmpEmployeeDatabase.csv', 'r+') as csvFile:
reader = csv.reader(csvFile, delimiter=',', quotechar='"')
writer = csv.writer(csvFile, delimiter=',', quotechar='"')
for row in reader:
row[1] = row[1].title()
writer.writerow(row)