搜尋

首頁  >  問答  >  主體

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

迷茫迷茫2785 天前873

全部回覆(5)我來回復

  • 阿神

    阿神2017-04-18 10:28:45

    這個問題跟列表嵌套無關,正常的賦值也會說你的那個錯誤。

    正確的做法是用陣列的append方法。

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:28:45

    a = []
    表示這是一個空列表。不存在任何元素。
    python是能把字典賦值給列表元素的。

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:28:45

    雷雷

    回覆
    0
  • 黄舟

    黄舟2017-04-18 10:28:45

    a是個空列表,你訪問a[0]顯然越界
    list assignment index out of range 意思是指你訪問數組index越界。

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-18 10:28:45

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

    回覆
    0
  • 取消回覆