我在“.fits”表中有一个存储值(这应该没有问题)。我读了表,然后做
In [2]: a['RA_touse'][0]
Out[2]: 161.65813
这是真正的存档值。但是,然后我这样做:
In [3]: print a['RA_touse'][0]
161.658
我得到一个截断的值。我将 python 与 POSTGRES 一起使用,这种行为会带来一些精度问题。
谁能向我解释这种行为,以及如何解决?我需要我的数据保持相同的格式,而不是更改它(即,repr() 函数会将所有内容都转换为字符串)。
非常感谢!
为清楚起见进行编辑:
我正在使用 python 脚本来创建数据库。我所做的是
con = psycopg2.connect('todatabase')
cur = con.cursor()
for i in vector_of_something:
value1 = table['column1'][i]
value2 = table['column2'][i]
values = (values1,values2)
values = [str(value) for value in values]
command = 'INSERT INTO table values (%s,%s)'
cur.execute(command,values)
con.commit()
问题是我在数据库中得到“161.658”,而不是 1.65813。