簡體   English   中英

如何更改列表中字典中特定鍵的值類型?

[英]How do I change the value type of a particular key in a dictionary in a list?

list = [
   {'rank': '1', 'name': 'Gus’s World Famous Fried Chicken', 'stars': '4.0', 'numrevs': '549', 'price': '$$'}, 
   {'rank': '2', 'name': 'South City Kitchen - Midtown', 'stars': '4.5', 'numrevs': '1777', 'price': '$$'}
]

我需要將numrevs更新為int

到目前為止我有這個,但我無法讓它工作:

list = [dt.update({k : int(v)}) for dt in rankings for k['numrevs'], v in dt.items()]

基本上你可以很容易地做到這一點:

for d in mylist:
    d["numrevs"] = int(d["numrevs"])

備注:不要命名任何變量list list是一個內置函數,覆蓋這個函數只會導致問題,因此我將 list 重命名為mylist

對於列表中的每個 dict,創建一個新的 dict,其中每個鍵的值與當前的 dict 相同,除了要替換為 int 的值。

這里我調用當前列表list1為了避免變量名和內置類型名的混淆。

list2 = [ {k:(int(v) if k=='numrevs' else v) 
          for k,v in d.items()}
            for d in list1 ]

暫無
暫無

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

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