只有我的数据的第一个数字被放入一个数组中

时间:2013-04-25 14:34:07

标签: python arrays file-io text-files

import numpy as np
import asciidata

def leesdata():
    RA = []
    Dec = []
    data = asciidata.open('S0-2.txt')
    for i in data[1]:
        RA.append(float(i))
    for i in data[2]:
         Dec.append(float(i))
    return RA, Dec

RA, Dec = leesdata()
print RA, Dec

当我运行时,我得到了这个:

[-0.04] [0.15, 0.138, 0.124, 0.098, 0.088, 0.078, 0.05, 0.041, 0.02,
 0.01, -0.017, -0.004, 0.011, 0.072, 0.079, 0.085]

因此,只有我的第一个数据被放入数组RA中,但Dec工作正常。我究竟做错了什么?

这是我要打开的文件

http://home.strw.leidenuniv.nl/~snellen/PS/S2_pos.dat

1 个答案:

答案 0 :(得分:1)

通常情况下,我会使用open和read的组合。这是我在文件中读到的方式:

f = open('S0-2.txt', 'r+')
RA = []
DEC=[]
for line in f:
    if ( not(line.startswith('#')) ):
        RA.append( line.split()[1] )
        DEC.append( line.split()[2])

print RA

print DEC