python中列表內(nèi)能否套字典?
問題描述
python中能否將字典當(dāng)做值賦給列表呢?
我在對代碼做了一個簡單的演示,但是為什么不行呢?還是說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:這個問題跟列表嵌套無關(guān),正常的賦值也會說你的那個錯誤。
正確的做法是用數(shù)組的append方法。
a = []表示這是一個空列表。不存在任何元素。python是能把字典賦值給列表元素的。
回答3:a.append({’key’:’vi’})回答4:
a是個空列表,你訪問a[0]顯然越界list assignment index out of range 意思是指你訪問數(shù)組index越界。
回答5:Python知識點(diǎn):List數(shù)據(jù)類型特性:1、List的每個元素可以Python的任意數(shù)據(jù)類型(Boolean,Number,String,List,Dict,Set……)2、List不可以越界訪問,依舊是不能訪問不存在的List元素
代碼分析:// 創(chuàng)建一個空List,并將該空List的引用賦值給標(biāo)識符aa=[]// 賦值0給標(biāo)識符bb=0// a[b]此時的含義是,訪問List a的第0個元素,然而此時List a還是空的,也就是a[0]不存在,這叫越界訪問。// 在Python中,不允許越界訪問,此時會拋出錯誤:IndexError: list assignment index out of rangea[b]={’key’:’vi’}
相關(guān)文章:
1. [python2]local variable referenced before assignment問題2. 求救一下,用新版的phpstudy,數(shù)據(jù)庫過段時間會消失是什么情況?3. mysql - 如何在有自增id的情況下,讓其他某些字段能不重復(fù)插入4. python小白,關(guān)于函數(shù)問題5. django - Python error: [Errno 99] Cannot assign requested address6. angular.js - 百度支持_escaped_fragment_嗎?7. java - 線上應(yīng)用,如果數(shù)據(jù)庫操作失敗的話應(yīng)該如何處理?8. node.js - win 下 npm install 遇到了如下錯誤 會導(dǎo)致 無法 run dev么?9. python小白 關(guān)于類里面的方法獲取變量失敗的問題10. Python2中code.co_kwonlyargcount的等效寫法
