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