読者です 読者をやめる 読者になる 読者になる

言語処理100本ノック

16. ファイルをN分割する

自然数Nをコマンドライン引数などの手段で受け取り,入力のファイルを行単位でN分割せよ.同様の処理をsplitコマンドで実現せよ

import sys
import math

n = int(sys.argv[1])
fr = open("D:\\nlp100\\hightemp.txt",encoding="UTF-8")
list = fr.readlines()
fr.close()
list_num = len(list)
split_num = math.floor(list_num / n)
start = 0
for l in range(n):
    if l == n - 1:
        print(len(list[start:]))
    else:
        print(len(list[start:start + split_num]))
    start += split_num