python 的dict的append()?


看我下面這個表達,以為dict有append()

#導入模塊
import pandas as pd
import numpy as np
import xlrd  #讀Excel
import xlwt  #將內容寫進Excel

#打開excel文件1  
workbook = xlrd.open_workbook(r'F:\\python\\test\\bb_6c.xlsx')   
sheet = workbook.sheet_by_index(0)  
rows = [sheet.row_values(row,0,14) for row in range(sheet.nrows)]
name_lists = {}   
for r in rows:
    #因為我們是根據姓名來切分,姓名在第二列。所以這里是r[1]
    if r[1] not in name_lists:
        name_lists[r[1]] = []
    name_lists[r[1]].append(r)

其實不是的,看name_lists[r[1]] = [],name_lists[r[1]]對應的是一個list[],是[]有append()方法,而不是dict有

a={'a':1,'b':[2]}   #{'a': 1, 'b': [2]}
a['c']=3   #{'a': 1, 'b': [2], 'c': 3}
#a['b']對應的是一個數組[2]所以有baiappend。dict是字典,不需要增加而是直接du賦值
a['b'].append(1)    #{'a': 1, 'b': [2, 1], 'c': 3}

#但是給a['a'].append(1) 就會報錯
a['a'].append(1)   #AttributeError: 'int' object has no attribute 'append'

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM