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知識點: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. dockerfile - [docker build image失敗- npm install]2. docker-compose中volumes的問題3. golang - 用IDE看docker源碼時的小問題4. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!5. angular.js - angular內(nèi)容過長展開收起效果6. nignx - docker內(nèi)nginx 80端口被占用7. mac里的docker如何命令行開啟呢?8. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題9. 我在centos容器里安裝docker,也就是在容器里安裝容器,報錯了?10. docker內(nèi)創(chuàng)建jenkins訪問另一個容器下的服務(wù)器問題

網(wǎng)公網(wǎng)安備