непригодный массив при передаче txt файла в массив - PullRequest
0 голосов
/ 22 мая 2019

Так что мне нужно передать все элементы (все строки) из файла TXT в массив для дальнейшего использования. У меня есть такой вывод:

 ['mzm\n', 'vur\n', 'bmc\n', 'irl\n'], 

но у меня есть:

 KeyError: '\n' because of this '/n's. 

Можно ли передать все строки в массив, чтобы получить этот вывод [mzm, vur, bmc, irl]?

Это для моего алгоритма сортировки по основанию.

def main():
    with open('Array.txt') as my_file:
        words = my_file.readlines()
    max_size = check_max_word_size(words)
    new_list = set_same_size(words, max_size)
    new_list = radix_sort(new_list, max_size-1, 0)
    #Remove the dots previously added to the words
    index = 0
    for word in new_list:
        new_list[index]= re.sub('[.]', '', word)
        index+=1
    #Print the final ordered list, all lower case
    print(new_list)

if __name__ == '__main__':
    main()

[mzm, vur, bmc, irl]

Ответы [ 2 ]

0 голосов
/ 22 мая 2019

Символы '\n' взяты из файла, поскольку readlines() сохраняет их.

Вы можете удалить символы '\n' следующим образом:

words = [w.strip('\n') for w in words]
0 голосов
/ 22 мая 2019

Вы можете удалить завершающие символы новой строки в word следующим образом:

new_list[index]= re.sub('[.]', '', word.rstrip())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...