import csv def csv_to_files (path): header = [] with open(path, newline='') as csvfile: reader = csv.reader(csvfile, delimiter=',') #le csv, modifica delimitador se necessario header = next(reader) #le primeira linha header.pop(0) #retira primeiro elemento, pois eh vazio matrix_strings = [] #cria matriz que recebera as strings que irao para cada arquivo for row in reader: #como a primeira linha ja foi lida comeca a partir da segunda line = [] for value in row[1:]: #primeiro elemento eh a chave que tem em todos os arquivos, entao pega a partir do segundo line.append (row[0]+"="+value) #concatena chave, "=" e traducao matrix_strings.append(line) #ao fim cria matriz com cada coluna contendo as chaves + traducoes de cada linguagem #ex coluna: en_US # loading=LOADING # title=Fractions # ... lang_num = 0 for lang in header: #pega uma coluna por vez e insere no arquivo de linguagem no diretorio atual translations ='' for line in matrix_strings: translations = translations+line[lang_num]+"\n" text_file = open(lang, "w") #abre o arquivo que sera criado text_file.write(translations) #escreve no arquivo text_file.close() #fecha o arquivo lang_num = lang_num + 1 #importante perceber que todos os arquivos ficarao com a ultima linha vazia path = "lang.csv" #caminho para arquivo csv gerado anteriormente csv_to_files(path)