簡體   English   中英

將字典中的值從str強制轉換為float

[英]Casting a value in a dictionary from str to float

我一直在嘗試查看其他問題,但沒有發現任何對我有用的東西。 我有一個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}

不斷得到

“功能”對象不可下標”

要么

“ NoneType”對象不可下標

如果您要從字典中覆蓋值,則應執行以下操作

def float_values(trips):

    for trip in trips:
        for key, value in trip.items():
            trip[key] = float(value)

    return trips

通過執行value = float(value)您正在臨時寫入float值,而不是將其保存到任何地方

您只需要做的就是在字典中更改值:

for list_dict in list_of_dicts:
    for key, value in list_dict.items():
        list_dict[key] = float(value)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM