首页 > 解决方案 > 如何在python中按字母顺序对列表进行排序?

问题描述

我有一个程序,我在其中接收一个 txt 文件并将文本分解为单个单词并将它们放入一个列表中。下一部分是按字母顺序对列表进行排序并打印出来。

到目前为止,我有一个文本文件,上面写着:“快速棕色狐狸跳过懒狗”

到目前为止,我的程序看起来像:

file = input("Enter File Name: ")
myList =[]

readFile = open(file, 'r')

for line in readFile:
    myList.append(line.split(" "))

myList.sort()

print(myList)

问题是,当我运行程序时,正在创建列表并填充每个单词,但是当它被打印出来时,它没有按字母顺序排序。我也试过print(myList.sort())了,唯一打印的是“无”

标签: pythonlist

解决方案


问题是在 中line.split(" ")创建了一个单词列表line,但是将此列表作为一个新的单个myList.append项目添加到 myList 中(因此您最终得到的是列表列表而不是单词列表)。你可能想要的是:

myList.extend(line.split(" "))

推荐阅读