from glob import glob
import os
class DumpTxtEditor:
def __init__(self, args):
self.args = args
def edit_dump_txt(self):
size_list = self.calc_size_list()
with open(os.path.join(self.args.dump_dir, self.args.txt_name), mode='w') as f:
while True:
print("input : from (when input -9999, exit)")
from_num = int(input())
if from_num == -9999:
break
print("input : to")
to_num = int(input())
if from_num < to_num:
for i in range((to_num - from_num + 1)):
if (i % self.args.choice_interval) == 0:
cur_file_name = self.check_file_name(from_num + i, size_list)
print('{} {:08}'.format(self.args.dump_dir_name.format(cur_file_name), from_num + i))
f.write('{} {:08}\n'.format(self.args.dump_dir_name.format(cur_file_name), from_num + i))
def calc_size_list(self):
subdir_names = glob(os.path.join(self.args.eso_imgs_dir, self.args.imgs_name.format('*')))
size_list = []
for subdir_name in subdir_names:
size_list.append(len(glob(os.path.join(subdir_name, '*.png'))))
return size_list
def check_file_name(self, file_num, size_list):
subdir_num = 0
for i, size in enumerate(size_list):
file_num -= size
if file_num < 0:
return subdir_num
subdir_num += 1