import csv import os def read_files(base_dir): data = [] for file in os.listdir(base_dir): print(f'reading file \'{file}\'') with open(os.path.join('data', file), 'r') as input_file: data.extend(list(csv.DictReader(input_file))) return data def main(): data = read_files('data') print(data[0]) print("Sorting") data = sorted(data, key=lambda entry: int(entry['SERIAL_NUMBER'])) print(data[0]) print(f'final length of data {len(data)}') with open('test.csv', 'w') as out_file: writer = csv.DictWriter(out_file, data[0].keys()) writer.writeheader() writer.writerows(data) if __name__ == '__main__': main() # # with open('test.csv') as again_in: # reader2 = csv.DictReader(again_in) # data2 = list(reader2) # # print(data2[0]) # # print(f"Is same? {data[0] == data2[0]}")