将txt文件传递到数组时无法使用的数组

时间:2019-05-22 11:26:26

标签: python file

因此,我需要将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 :(得分:0)

您可以像这样在word中删除结尾的换行符:

new_list[index]= re.sub('[.]', '', word.rstrip())

答案 1 :(得分:0)

'\n'保留了字符readlines(),它们来自文件。

您可以这样删除字符'\n'

words = [w.strip('\n') for w in words]