content = '''
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
'''
array = [map(int,ln.strip().split(' '))
for ln in content.splitlines() if ln.strip()]
import pprint
pprint.pprint(array)
[[1, 1, 1, 1, 1],
[2, 2, 2, 2, 2],
[3, 3, 3, 3, 3],
[4, 4, 4, 4, 4],
[5, 5, 5, 5, 5]]
既然是固定格式的那么,我们可以按照固定的长度取字符串;
将取出的字符串按照自己设定的数据结构存入到数组之中;
在Python中是没有数组这一说的,你可以使用list嵌套即可;
还有另外一种形式就是使用第三方库,例如numpy。
假设有个文件,形式如下:
1.1
0.1
0.2
0.3
0.4
2.4
3.3
2.5
1.3
4.5
3.6
8.1
9.8
5.6
3.1
有3组,每组5个数,要求外循环三次,内循环5次,把整个数组存到一个5行3列的2维数组中。
代码如下:
#!/usr/bin/env python
#coding:utf-8
from pprint import pprint
vbuf=open('/tmp/1.txt','r').read().split('\n\n')
result=zip(*[x.strip().split('\n') for x in vbuf])
pprint(result)