python中列表內能否套字典?
問題描述
python中能否將字典當做值賦給列表呢?
我在對代碼做了一個簡單的演示,但是為什么不行呢?還是說python就不能列表套字典,只能是字典套列表?
>>> a=[]>>> b=0>>> a[b]={’key’:’vi’}Traceback (most recent call last): File '<pyshell#2>', line 1, in <module> a[b]={’key’:’vi’}IndexError: list assignment index out of range>>>
問題解答
回答1:這個問題跟列表嵌套無關,正常的賦值也會說你的那個錯誤。
正確的做法是用數組的append方法。
a = []表示這是一個空列表。不存在任何元素。python是能把字典賦值給列表元素的。
回答3:a.append({’key’:’vi’})回答4:
a是個空列表,你訪問a[0]顯然越界list assignment index out of range 意思是指你訪問數組index越界。
回答5:Python知識點:List數據類型特性:1、List的每個元素可以Python的任意數據類型(Boolean,Number,String,List,Dict,Set……)2、List不可以越界訪問,依舊是不能訪問不存在的List元素
代碼分析:// 創建一個空List,并將該空List的引用賦值給標識符aa=[]// 賦值0給標識符bb=0// a[b]此時的含義是,訪問List a的第0個元素,然而此時List a還是空的,也就是a[0]不存在,這叫越界訪問。// 在Python中,不允許越界訪問,此時會拋出錯誤:IndexError: list assignment index out of rangea[b]={’key’:’vi’}
相關文章:
1. mysql - 數據庫建字段,默認值空和empty string有什么區別 1102. 新人求教MySQL關于判斷后拼接條件進行查詢的sql語句3. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現存在即更新應該使用哪個標簽?4. mysql - 這種分級一對多,且分級不平衡的模型該怎么設計表?5. Navicat for mysql 中以json格式儲存的數據存在大量反斜杠,如何去除?6. mysql - 數據庫表中,兩個表互為外鍵參考如何解決7. php - 公眾號文章底部的小程序二維碼如何統計?8. mysql - 表名稱前綴到底有啥用?9. mysql - 千萬數據 分頁,當偏移量 原來越大時,怎么優化速度10. mac OSX10.12.4 (16E195)下Mysql 5.7.18找不到配置文件my.cnf
