我一直在尝试查看其他问题,但没有发现任何对我有用的东西。我有一个if字典(行程)的列表,想要访问行程列表中每个词典中的值,并将其从字符串转换为float。
如果我旅行[0],则输出为:
# {'pickup_latitude': '40.64499',
# 'pickup_longitude': '-73.78115',
# 'trip_distance': '18.38'}
我正在尝试构建一个遍历字典列表的函数,访问值并将它们转换为浮点数。
我尝试了以下各种版本的代码,包括尝试构建新字典并将其返回
def float_values(trips):
for trip in trips:
for key, value in trip.items():
value = float(value)
return
float_values [0]应该输出:
# {'pickup_latitude': 40.64499,
# 'pickup_longitude': -73.78115,
# 'trip_distance': 18.38}
不断得到
“功能”对象不可下标”
OR
“ NoneType”对象不可下标
答案 0 :(得分:2)
如果您要从字典中覆盖值,则应执行类似的操作
def float_values(trips):
for trip in trips:
for key, value in trip.items():
trip[key] = float(value)
return trips
通过value = float(value)
,您正在临时写浮点值,而不是将其保存在任何地方
答案 1 :(得分:1)
只需要做的就是更改字典中的值:
for list_dict in list_of_dicts:
for key, value in list_dict.items():
list_dict[key] = float(value)