Pythonでテキストファイルを読み書きする
Pythonでテキストファイルを読み書きするサンプルです。
Read サンプル
1行づつ読み込み、総文字数をカウントするサンプルです。
from __future__ import with_statement
import codecs
def count_character(input_file):
count = 0
with codecs.open(input_file, 'r', 'utf-8') as f_in:
for line in f_in:
line = line.rstrip('\r\n')
count += len(line)
#;
#;
print "%s > %d\n" % (input_file, count)
#;
Read/Write サンプル
CSVファイルをTSV(タブ区切り)に変換しています。
from __future__ import with_statement
import codecs
import os.path
def csv_to_tsv(input_file):
root, ext = os.path.splitext(input_file)
output_file = root + ".tsv"
lines = []
with codecs.open(output_file, 'wb', "shift_jis") as f_out:
with codecs.open(input_file, 'r', 'shift_jis') as f_in:
for line in f_in:
line = line.rstrip('\r\n')
columns = line.split(',')
lines.append("\t".join(columns))
# 65535行毎に出力.
if (65535 < len(lines)):
f_out.write('\n'.join(lines))
f_out.write('\n')
del lines[:]
#;
#;
#;
if (0 < len(lines)):
f_out.write('\n'.join(lines))
f_out.write('\n')
#;
#;
del lines[:]
#;