随笔 - 384  文章 - 0  评论 - 35  阅读 - 142万

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'

 

posted on   小小喽啰  阅读(16640)  评论(1编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示