自然言語処理100本ノック2020から逃げるな「12. 1列目をcol1.txtに,2列目をcol2.txtに保存」

これは自然言語処理100本ノック2020に挑んだ、とある人間の記録
他の問題はこちら → 自然言語処理100本ノック2020から逃げるな まとめ

12. 1列目をcol1.txtに,2列目をcol2.txtに保存

各行の1列目だけを抜き出したものをcol1.txtに,2列目だけを抜き出したものをcol2.txtとしてファイルに保存せよ.確認にはcutコマンドを用いよ

Pythonコード

import sys

path = sys.argv[1]
with open(path) as f, \
    open('col1.txt', 'w') as c1, \
    open('col2.txt', 'w') as c2:
    for line in f:
        line_sp = line.split('\t')
        c1.write(line_sp[0] + '\n')
        c2.write(line_sp[1] + '\n')

確認用UNIXコマンド

私の環境は少し特殊(fish)なので、もしかしたら動かないかも。

cut -f 1 ../popular-names.txt > col1_unix.txt
cut -f 2 ../popular-names.txt > col2_unix.txt
diff -s col1.txt col1_unix.txt
diff -s col2.txt col2_unix.txt

実行結果

長いので冒頭のみ

Mary
Anna
Emma
Elizabeth
Minnie
Margaret
Ida
Alice
Bertha
Sarah
John
William
James
Charles
George
Frank
Joseph
Thomas
Henry
Robert
...