導航:首頁 > 編程語言 > python字典嵌套列表

python字典嵌套列表

發布時間:2023-09-25 03:46:05

『壹』 python如何實現列表嵌套字典,字典內相同key去重,字典內另外一個key的value相加

按照你的要求編寫的字典內相同key合並的Python程序如下

l=[{'a':1,'b':'haha'},{'a':3,'b':'haha'},{'a':2,'b':'xiaoming'}]

result=[]

temp=[]

for i in range(len(l)):

flag=False

suma=l[i]['a']

b=l[i]['b']

for j in range(i+1,len(l)):

if l[i]['b']==l[j]['b'] and (j not in temp):

flag=True

temp.append(i)

temp.append(j)

suma=suma+l[j]['a']

if i not in temp or flag==True:

result.append({'a':suma,'b':b})

print(result)

源代碼(注意源代碼的縮進)

『貳』 Python字典推導法,怎麼輸出嵌套字典

實際上各種推導式的本質就是for循環, 它們之間的區別只是取值方式的不同和表達式的不同
首先, 字典的取值方式有兩種: 按key取值, 使用get方法取值
其次, 字典推導式的表達式部分需要寫成 key:value 的形式
如果要使用字典推導式推導一個嵌套字典
例如:
infos = {"張三":{ "age":18, "salary":5000},
"李四":{"age":19, "salary":8000},
"王五":{ "age":20, "salary":6000}}
要從infos這個嵌套的字典中推導出一個形如{"張三":5000, "李四":8000, "王五":6000}的字典
首先可以考慮最內層的推導式:
names = [name for name in infos]
這樣就得到了一個姓名的列表: ["張三", "李四", "王五"]
再迭代這個列表, 生成字典的每一項, 於是字典生成式應該像下面這樣:
salary_dict = {name:薪資 for name in names}
在這里, 因為name正好是infos這個字典的key, 所以可以使用name從字典infos中取出對應的薪資, 於是有下面的形式:
salary_dict = {name:infos[name]["salary"] for name in names}
這里就用到的字典的用key取值的方式, 當然, 也可以用get方法取值, 例如下面的形式:
salary_dict = {name:infos.get(name).get("salary") for name in names}
這兩種方式都是可以的, 根據個人喜好選擇就好
為了顯得逼格更高, 可以把names的列表推導式和salary_dict的字典推導式結合起來, 於是就得到下面的形式:
salary_dict = {name:infos[name]["salary"] for name in (name for name in infos)}
到這里, 你會發現表達式里有好多name, 顯得非常重復, 實際上這里並不需要列表推導式, 直接從字典里迭代出來的key就是name了, 所以最終的形式如下:
salary_dict = {name:infos[name]["salary"] for name in infos}
這里為了得到一個比較簡單的結果而繞了一個大圈子, 是為了說明更加通用方法, 對於這個例子, 很容易就能得出結果的哈

『叄』 python的嵌套字典問題

列印一下id內存地址

第一次循環賦值 new_alien 就是已經鎖定了id內存地址,下面2次循環都是對內存地址上的賦值

『肆』 Python字典嵌套字典排序,該怎麼處理

感覺這個需求有些許問題,因為通常對比排序的都是同一類型的數據,譬如aaa代表是年齡,bbb代表的是工資,等等... 所以不會拿自己的年齡和工資作一次排序。

# 要做的話,可以手動給它並成一個新列『sort_key』。 obj就是你最外層的a,免得同名混淆

for i in obj:

obj[i]['sort_key'] = obj[i].values()[0]

# 目的是構造出這樣的結構:

# ('c', {'sort_key': 1, 'ccc': 1}), ('d', {'sort_key': 2, 'ddd': 2}), .....)

print(sorted(obj.items(), key = lambda x:x[1]['sort_key']))

『伍』 python 列表嵌套字典再嵌套字典怎麼排序

sorted(my_list,key=lambda x:x['location']['left'])

『陸』 python字典的基本操作

python字典的基本操作如下:

查詢字典

字典裡面可以嵌套字典,嵌套列表。

『柒』 Python列表嵌套多個字典,循環讀取字典「名稱」,並輸出

cloris={'Owner':'jack','kind':'dog'}
brinkley={'Owner':'tom','kind':'cat'}
pets=['cloris','brinkley']
foriinpets:
print('%s:'%i)
print('Owner:%s,kind:%s'%(eval(i)['Owner'],eval(i)['kind']))

驀然回首···還是這個好看

閱讀全文

與python字典嵌套列表相關的資料

熱點內容
反編譯exe腳本 瀏覽:460
源碼文件夾怎麼編譯到固件中 瀏覽:910
ERp列印伺服器錯誤怎麼弄 瀏覽:111
蚌埠u盤加密軟體有哪些 瀏覽:178
前端如何認證伺服器 瀏覽:554
linux切換db2用戶命令 瀏覽:306
相片如何用電解壓 瀏覽:905
碩士程序員去學校當老師 瀏覽:120
pythonstr提取到字典 瀏覽:818
程序員那麼可愛有人看上陸漓了 瀏覽:876
php正則提取圖片 瀏覽:103
pythonlinuxdjango 瀏覽:562
php中文返回亂碼 瀏覽:89
宿舍裝的電信怎麼加密 瀏覽:745
為什麼壓縮文件解壓後變少了 瀏覽:426
現在安卓充電器普遍是什麼型號 瀏覽:714
9日均線36均線主圖指標源碼 瀏覽:349
程序員阿里文化完整版 瀏覽:98
早間新聞在哪個app上面可以看 瀏覽:954
工作啦app注冊的信息怎麼刪去 瀏覽:378