用Python读取文件中的数字并加入list的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Python读取文件中的数字并加入list的问题相关的知识,希望对你有一定的参考价值。

我的文件是txt格式(testdata.txt),文件里的数据是:
20 1
16
14
18
10
12
19
20
8
17
3
13
2
15
7
1
6
11
4

第一行两个数字,
然后我用代码
f = open('testdata.txt')
s = f.read()
print(s)
array = []
for line in s:
array.append(line)
print(array)
从文档中读取数据并且加入array,然而结果是这样的:['2', '0', ' ', '1', '\n', '1', '6', '\n', '1', '4', '\n', '1', '8', '\n', '1', '0', '\n', '1', '2', '\n', '1', '9', '\n', '2', '0', '\n', '8', '\n', '1', '7', '\n', '3', '\n', '1', '3', '\n', '2', '\n', '1', '5', '\n', '7', '\n', '1', '\n', '6', '\n', '1', '1', '\n', '4', '\n', '9', '\n']
也就是说它不但是一个数一个数读的(20被拆成了2和0),而且空格和换行符号都在里面。
我现在需要一个方式把这些数据按照每个整数添加到array里面,而且不能有空格和换行(因为我要用到每个数字的位置,如果中间有空格的话位置就改变了)

求大神给一个修改的建议或者正确的代码写法,小白在此谢谢谢谢谢谢谢过各位了QAQQQ

参考技术A array = []

for line in open('testdata.txt'):
    array.extend(line.strip().split(' '))

array = map(int, array)
print(array)

追问

谢谢帮助!!!!QAQ但是似乎还是有点问题,我现在的情况是,print出来之后显示这个:
请问这个是什么意思呢QAQ

追答

哦 ,只是一个类型问题而已,你改成
print(list(array))
就可以了。

追问

嗷嗷嗷嗷嗷嗷啊大神啊 给我一个签名吧QWQ!!!!!!!

本回答被提问者和网友采纳

以上是关于用Python读取文件中的数字并加入list的问题的主要内容,如果未能解决你的问题,请参考以下文章

小记 用python进行排序

使用python读取excel中的数据,并重新写入到新的excel中

python 读取文档 并创建任意多的list

我想读取带有数字的外部文件并将它们复制到列表中。 Python [重复]

python如何把txt中的数字提取出来放到list中,要求格式是int,而不是原始的str?

用c语言或者python将文件中特定字符串后面的数字相加