python中列表内能否套字典?
迷茫
迷茫 2017-04-18 10:26:45
0
5
874

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
>>> 

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(5)
阿神

这个问题跟列表嵌套无关,正常的赋值也会说你的那个错误。

正确的做法是用数组的append方法。

大家讲道理

a = []
表示这是一个空列表。不存在任何元素。
python是能把字典赋值给列表元素的。

伊谢尔伦
a.append({'key':'vi'})
黄舟

a是个空列表,你访问a[0]显然越界
list assignment index out of range 意思是指你访问数组index越界。

Ty80

Python知识点:

List数据类型特性:
1、List的每个元素可以Python的任意数据类型(Boolean,Number,String,List,Dict,Set……)
2、List不可以越界访问,依旧是不能访问不存在的List元素

代码分析:

// 创建一个空List,并将该空List的引用赋值给标识符a
a=[]
// 赋值0给标识符b
b=0
// a[b]此时的含义是,访问List a的第0个元素,然而此时List a还是空的,也就是a[0]不存在,这叫越界访问。
// 在Python中,不允许越界访问,此时会抛出错误:IndexError: list assignment index out of range
a[b]={'key':'vi'}
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage