用Python读取文件中的数字并加入list的问题
我的文件是txt格式(testdata.txt),文件里的数据是:20116141810121920817313215716114第一行两个数字,然后我用代码f=open...
我的文件是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 展开
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 展开
1个回答
2016-08-13
展开全部
array = []
for line in open('testdata.txt'):
array.extend(line.strip().split(' '))
array = map(int, array)
print(array)
更多追问追答
追问
谢谢帮助!!!!QAQ但是似乎还是有点问题,我现在的情况是,print出来之后显示这个:
请问这个是什么意思呢QAQ
追答
哦 ,只是一个类型问题而已,你改成
print(list(array))
就可以了。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询