0

这很简单,但我似乎无法做到正确。

我有一个包含表格中数字的文本文件

0 1 2
3 43 
5 6 7 8

等等。

我想读取这些数字并将其存储在一个列表中,这样每个数字都是列表的一个元素。如果我将整个文件作为字符串读取,如何拆分字符串以分离这些元素?

谢谢。

4

3 回答 3

3

您可以像遍历行列表一样遍历文件对象:

with open('file.txt', 'r') as handle:
    numbers = [map(int, line.split()) for line in handle]

一个稍微简单的例子:

with open('file.txt', 'r') as handle:
    for line in handle:
        print line
于 2012-12-22T07:35:57.067 回答
0

首先,打开文件。然后遍历文件对象以获取其每一行并在该行上调用 split() 以获取字符串列表。然后将列表中的每个字符串转换为一个数字:

f = open("somefile.txt")

nums = []
strs = []

for line in f:
    strs = line.split() #get an array of whitespace-separated substrings 
    for num in strs:
         try:
             nums.append(int(num)) #convert each substring to a number and append
         except ValueError: #the string cannot be parsed to a number
             pass

nums 现在包含文件中的所有数字。

于 2012-12-22T07:38:36.377 回答
-1

如何拆分字符串以分离这些元素

string.split()

于 2012-12-22T07:36:10.663 回答