Python - 文法 - ファイル入出力 - テキストファイル分割


 


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 でファイル分割する」

audiobook.jp
【usus ウズウズ】
薬屋の独り言
損保との違い
JETBOY
サウンドハウス
EaseUS
Amazonギフトカード
健康サポート特集
5G CONNECT
TikTok Shop 【リピート用プログラム】
ハイスピードプラン
アフィリエイトのアクセストレード
葬送のフリーレン Prime Video
earthcar(アースカー)
ネットオークションの相場、統計、価格比較といえばオークファン
それがだいじWi-Fi
U-NEXT
ベルリッツ