単純なPythonコード(私はPythonの初心者です)から正しい結果を得ようとしました。 与えられるCSV入力ファイル(ListInput.csv): PKT、PET、PUT、csvコンテンツPythonのリストelmentsによるフィルタリング
これらの要素(Table.csv)の多くの特徴を含む別のCSVファイル:
pBR,156,AATGGT,673,HHHTTTT,
pUT,54,CCATGTACCTAT,187,PRPTP,
pHTM,164,GGTATAG,971,WYT,
pKT,12,GCATACAGGAC,349,,
pET,87,GTGACGGTA,506,PPMK,
.. ..........など
私は、出力(WorkList.txt)としてcsvファイルを取得するために、最初のcsvファイル要素に基づいて選択を得ることを目指しています。この場合は期待されています結果は次のようになります。
pKT,12,GCATACAGGAC,349,,
pET,87,GTGACGGTA,506,PPMK,
pUT,54,CCATGTACCTAT,187,PRPTP,
私はエラーを出さないが出力として空のファイルで終わる次のスクリプトを書いた。私は何日も成功しなかった理由を理解しようとしています。どんな助けでも大歓迎です。
#!/usr/bin/python
import csv
v = open('ListInput.csv', 'rt')
csv_v = csv.reader(v)
vt = open('Table.csv', 'rt')
csv_vt = csv.reader(vt)
with open("WorkingList.txt", "a+t") as myfile:
pass
for el in csv_v:
for var in csv_vt:
if el == var[0]:
myfile.write(var)
myfile.close()
right!あなたのミスを私の最終的なコードにコピーしたからです。私の編集 '最初の列が辞書に入っているかどうかを確認するには、' vdict: 'の中でel [0] ifを参照してください。 –
あなたの残っていないコードの残りの部分が修正されました。 csv.writerを使用する必要があります。 –
申し訳ありません。テストのないコーディングが原因です。代わりに 'writerow'が必要です。 –