11 : 言語処理100本ノックでPythonのお勉強

第二章 : 11 タブをスペースに置換せよ

タブ1文字につきスペース1文字に置換せよ.確認にはsedコマンド,trコマンド,もしくはexpandコマンドを用いよ.

sedコマンドを使ってファイル中の文字を置換します。当方macOS10.12 Sierraを使っているため、 sedコマンドではなく、gsedコマンドを使います。macではこっちを使ったほうがいいみたい。 あまり詳しくは調べてません。こちらでチェックしました。

$ wget 'hightemp.txt'   
$ gsed -i 's/\t/ /g' hightemp.txt

pythonでも処理を書いてみました。

f = 'hightemp.txt'
result = []

with open(f, mode='r') as data:
    for line in data:
        line = line.replace('\t', ' ')
        result.append(line)

with open(f, mode='w') as data:
    data.writelines(result)