使用 Django 从 Postgrades 数据库中获取十进制数据
Get decimal data from Postgrades database using Django
我使用 Python 和 Django 框架从 PostGress 数据库中获取一些十进制数据。
我的问题是变量“new_poi_lat”显示正确,但为什么变量“poi_lat”显示如下图?!
我想让“poi_lat”变量正常显示。
然后我想使用“zip(poi_lat,poi_log)”但是它给出了一个错误!
我的代码:
poi_lat = []
poi_log = []
for id in IDs:
poi_name = end_poi.values_list('lat','log').filter(id=id)
new_poi_lat = poi_name[0][0]
new_poi_log = poi_name[0][1]
print("new_poi_lat:" , new_poi_lat)
poi_lat.append(new_poi_lat)
poi_log.append(new_poi_log)
print("poi_lat:" , poi_lat)
coordinates = (zip(poi_lat, poi_log))
output:
new_poi_lat: 34.791553
new_poi_lat: 34.804567
poi_lat: [Decimal('34.791553'), Decimal('34.804567')]
那是因为有 Decimal
个对象,当您打印列表时,它会调用 repr(…)
,而不是 str(…)
。
您可以轻松地将它们转换为 float
s,然后将它们放入列表中:
poi_lat = []
poi_log = []
for id in IDs:
poi_name = end_poi.values_list('lat','log').get(id=id)
new_poi_lat = poi_name[0]
new_poi_log = poi_name[1]
print("new_poi_lat:" , new_poi_lat)
poi_lat.append(<strong>float(</strong>new_poi_lat<strong>)</strong>)
poi_log.append(<strong>float(</strong>new_poi_log<strong>)</strong>)
print("poi_lat:" , poi_lat)
coordinates = (zip(poi_lat, poi_log))
我使用 Python 和 Django 框架从 PostGress 数据库中获取一些十进制数据。 我的问题是变量“new_poi_lat”显示正确,但为什么变量“poi_lat”显示如下图?! 我想让“poi_lat”变量正常显示。 然后我想使用“zip(poi_lat,poi_log)”但是它给出了一个错误!
我的代码:
poi_lat = []
poi_log = []
for id in IDs:
poi_name = end_poi.values_list('lat','log').filter(id=id)
new_poi_lat = poi_name[0][0]
new_poi_log = poi_name[0][1]
print("new_poi_lat:" , new_poi_lat)
poi_lat.append(new_poi_lat)
poi_log.append(new_poi_log)
print("poi_lat:" , poi_lat)
coordinates = (zip(poi_lat, poi_log))
output:
new_poi_lat: 34.791553
new_poi_lat: 34.804567
poi_lat: [Decimal('34.791553'), Decimal('34.804567')]
那是因为有 Decimal
个对象,当您打印列表时,它会调用 repr(…)
,而不是 str(…)
。
您可以轻松地将它们转换为 float
s,然后将它们放入列表中:
poi_lat = []
poi_log = []
for id in IDs:
poi_name = end_poi.values_list('lat','log').get(id=id)
new_poi_lat = poi_name[0]
new_poi_log = poi_name[1]
print("new_poi_lat:" , new_poi_lat)
poi_lat.append(<strong>float(</strong>new_poi_lat<strong>)</strong>)
poi_log.append(<strong>float(</strong>new_poi_log<strong>)</strong>)
print("poi_lat:" , poi_lat)
coordinates = (zip(poi_lat, poi_log))