我试图从文件中读取一些数字,并将它们存储到名为numbers
的数组中。
我对每一行使用strip()
来删除每一行末尾的\n
。我还对每一行使用split(' ')
来删除数字之间的空格。
问题是在输入文件中,行上的第一个字符和行上的最后一个字符是空格。我怎样才能抹去它们?
这是我的代码:
def read_from_file():
f = open('input_file.txt')
numbers = []
for eachLine in f:
line = eachLine.strip()
for x in eachLine.split(' '):
line2 = int(x)
numbers.append(line2)
f.close()
print numbers
这是文本文件,其中下划线是空格:
_9 5_
_2 3 1 5 4_
_2 1 5_
_1 1_
_2 1 2_
_2 2 3_
_2 3 4_
_3 3 4 5_
_2 4 5_
_2 1 5_
_3 1 2 5_
strip()
已从两端删除空格。错误在以下行中:你应该在
for
中使用line
,而不是eachLine
。为了避免此类问题,您可以完全避免使用中间变量:
注意,不带参数的调用
split()
会在任何空白序列上进行拆分,这通常是您想要的。见:注意最后一个结果的空字符串。
split(' ')
在每个单个空白上拆分。使用^{} 删除前导空格和尾随空格
相关问题 更多 >
编程相关推荐