파이톤으로 파일 분할하기

3593 단어 Pythontech
대용량 파일을 분할할 기회가 있기 때문에 파이톤으로 시도해 보았습니다

완성판


4
# 分割したいファイルとそのファイルのエンコードを設定
input_file_name = "test.csv"
output_file_name = "test_%d.csv"
file_encode = "shift_jis"
# file_encode = "utf-8"

# 1ファイルあたりの行数
line_max = 10000

# 初期化
line_index = 1
file_seqno = 1

# ファイルを読み込んでwhileで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()
기본값utf-8이므로 shift인코딩 지정이 필요합니다.

좋은 웹페이지 즐겨찾기