在Python中将文件内容排序到列表中

在Python中将文件内容排序到列表中,python,file-io,Python,File Io,所以我正在处理一个.txt文件,我试图将所有的数字排序成一个整数列表 我的文件看起来像这样 21 32 54 65 128 38 92 155 21 54 我希望我的输出是: [21, 32, 54, 65, 128, 38, 82, 155, 21, 54]. 我如何做到这一点?只需使用split方法: with open('filename.txt', 'r') as file: # replace filename.txt with your filename data =

所以我正在处理一个.txt文件,我试图将所有的数字排序成一个整数列表

我的文件看起来像这样

21
32
54 65
128
38 92 155 21
54
我希望我的输出是:

[21, 32, 54, 65, 128, 38, 82, 155, 21, 54].

我如何做到这一点?

只需使用
split
方法:

with open('filename.txt', 'r') as file:  # replace filename.txt with your filename
    data = file.read().split()
    data = [int(x) for x in data]  # this will convert all of the numbers to integers

print(data)
输出:

[21, 32, 54, 65, 128, 38, 92, 155, 21, 54]

只需使用
split
方法:

with open('filename.txt', 'r') as file:  # replace filename.txt with your filename
    data = file.read().split()
    data = [int(x) for x in data]  # this will convert all of the numbers to integers

print(data)
输出:

[21, 32, 54, 65, 128, 38, 92, 155, 21, 54]
您可以使用
.split()
,但这将给出字符串列表。要转换,可以使用
[int(number)表示数字中的数字]
列表(map(int,number))

您可以使用
.split()
,但这将给出字符串列表。要转换,可以使用
[int(number)表示数字中的数字]
列表(map(int,number))


好的,若您想从文本文件中读取所有数字,将它们排序并存储在列表中,您可以尝试以下代码段:

data = []
with open('input.txt', 'r') as fp:
    for line in fp.readlines():
        _lineData = line.split(' ')
        for num in  [int(f) for f in _lineData if f != '']:
            data.append(num)
data.sort()
input.txt的内容

21
32
54 65
128
38 92 155 21
54
基于文本文件内容的输出将如下所示:

[21, 21, 32, 38, 54, 54, 65, 92, 128, 155]

好的,若您想从文本文件中读取所有数字,将它们排序并存储在列表中,您可以尝试以下代码段:

data = []
with open('input.txt', 'r') as fp:
    for line in fp.readlines():
        _lineData = line.split(' ')
        for num in  [int(f) for f in _lineData if f != '']:
            data.append(num)
data.sort()
input.txt的内容

21
32
54 65
128
38 92 155 21
54
基于文本文件内容的输出将如下所示:

[21, 21, 32, 38, 54, 54, 65, 92, 128, 155]

根据您的预期输出,它不需要排序吗?如果你想让它被排序,请根据你的预期输出更新你的帖子,它不会被排序吗?如果你想排序,请更新你的帖子