亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python 無法將 defaultdict 值傳遞給函數

Python 無法將 defaultdict 值傳遞給函數

藍山帝景 2023-08-15 16:41:56
我有一個復雜的代碼,它將一些值讀取到嵌套的 defaultdict 中。然后有一個循環遍歷字典中的鍵并使用它們 - 基本上將它們分配給另一個嵌套的默認字典。問題是,當我想使用字典中的值并訪問它們并將它們作為值傳遞給函數時...我得到空 {} 或類似的內容:defaultdict(<function tree at 0x2aff774309d8>我試圖寫這個字典,這樣我就可以看看它是否真的是空的。我的代碼的一部分;if (not families_data[family]['cell_db']['output']):        print(rf"Output for {family} is  empty.")        print(dict(families_data[family]['celldb']))真正有趣的部分是,當這個“if”為真時,我會得到以下輸出:adfull 的輸出為空。{'名稱':'adfullx05_b','家庭':'adfull','drive_strength':0.5,'模板':'adfull','類別':'','pinmap':'','輸出':' CO S', 'inout': '', '輸入': 'AB CI', 'rail_supply': 'VDD VSS', 'well_supply': '', '描述': ''}如果我將 if 中的第二行更改為        print(families_data[family]['celldb'])我得到以下輸出:defaultdict(<位于 0x2b45844059d8 的函數樹>, {'name': 'adfullx05_b', 'family': 'adfull', 'drive_strength': 0.5, 'template': 'adfull', 'category': '', 'pinmap' : '', '輸出': 'CO S', '輸入輸出': '', '輸入': 'AB CI', 'rail_supply': 'VDD VSS', 'well_supply': '', '描述': ' '})當輸出鍵中有值“CO S”時,為什么“if”甚至為真?當我嘗試訪問諸如 family_data[family]['cell_db']['input'] 之類的任何值并將其作為參數傳遞給函數時,為什么會收到 {}?我到底做錯了什么?
查看完整描述

1 回答

?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

if 語句中的“cell_db”鍵有下劃線,而 print 語句中沒有。


這應該可以修復它:


if (not families_data[family]['celldb']['output']):

    print(rf"Output for {family} is  empty.")

    print(dict(families_data[family]['celldb']))


查看完整回答
反對 回復 2023-08-15
  • 1 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號