- 1. 概要
- 2. プログラム
- 3. 参考サイト
1. 概要
ある、巨大なテキストファイルがありましてな。
これを、エディタでのぞいてみたいのですが、大きすぎて、開こうとしたら、エディタがこけたり、気の遠くなるような時間がかかります。
これはいかんと思いまして、ファイルを一定行で分割したいと思います。
2. プログラム
参考サイト、もろパクリですが。
input_file_name = "/path/file_name.extend"
output_file_name = "/path/file_name_%d.extend"
file_encode = "utf-8"
line_max = 100000
line_index = 1
file_seqno = 1
input_file = open(input_file_name, encoding=file_encode)
output_file = open(output_file_name % file_seqno, "w", encoding=file_encode)
line = input_file.readline()
while line:
if line_index > line_max:
output_file.close()
line_index = 1
file_seqno += 1
output_file = open(output_file_name % file_seqno, "w", encoding=file_encode)
output_file.write(line)
line_index += 1
line = input_file.readline()
input_file.close()
output_file.close()
1行目で、分割元のファイル名を指定します。
2行目で、分割先のファイル名を指定します。「_n」で、1から順番に分割番号を設定していきます。
3行目で、ファイルのエンコードを指定します。
4行目で、分割するときの 1ファイル分の行数を指定します。
やってみましたが、ばっちりでした。
3. 参考サイト
本ページは、下記のサイトを参考にさせていただきました。
「Python でファイル分割する」
|
|