• python学习手册:第八章——列表与字典


    列表

    • 列表的解析,从一个嵌套列表中按照需要的规则提取出一个新的列表
    a = '''a,b,c,d
    q,w,e,r
    t,y,u,i
    '''
    b = a.split() #使用空格作为分隔符时,不要使用a.split('
    '),否则会出现末尾带空字符的情况
    c = []
    for i in b :
        c.append(i.split(','))
    col2 = [row[1] for row in c] #先以空格分割字符串成一个以行为单位的列表,再以,为分隔符分割成二维字符串,最后取出每行第二个字符
    
    • 列表具有字符串的大部分性质
    • 列表可以针对分片赋值
    l = [1,2,3,4,5,6]
    l[1:4] = [1,1,1]
    print l #[1, 1, 1, 1, 5, 6]
    l[1:4] = ['x',1.1,1]
    print l #[1, 'x', 1.1, 1, 5, 6] 此过程被替换掉的不需要与替换掉的相同
    

    列表的方法

    • append 在最后增加:l.append("x")
    • sort 排序:l.sort() # 根据首元素ASCII码排序
    • extend 在列表后添加多个元素: l.extend([1,23,4,5])
    • l.pop(1) 移除索引为1的值
    • index 查询列表元素的索引 l.index('bob') > 0
    • insert 在某个位置插入某个元素 L.insert(0,"tom") > L["tom",'bob']
    • remove 删除值为X的元素,如果列表有多个值为X的元素,从小的索引一次删一个 L.remove("tom")

    列表的其他操作

    • del 删除一个元素或一个分片 del L[0] ; del L[1:]
    • 另一种删除分片的方法:L[2:3] = []

    字典

    字典的常用操作

    D = {} #空字典
    D = {"spam":2,'eggs':3} #两项目字典
    D = {"food":{'ham':1,'egg':2}} #嵌套字典
    D = dict.fromkeys('a','b') #构造一个a为键,b为值的字典
    D = dict.fromkeys(['a','b'],0) # {'a': 0, 'b': 0} 此种方式比较方便为键赋予初始值
    
    a = [1,2,3,4]
    b = [4,5,6,7]
    D = dict(zip(a,b)) #如果a和b的长度不能对应,则以最短的为准对齐
    
    D = dict(name='bob',age = 40) #直接构造字典{'name': 'bob', 'age': 40} 此种方式键必须为字符串
    D['eggs'] ; D['food']['ham'] #以键为索引进行运算
    'eggs' in D #成员存在测试
    D.keys() #方法:键
    D.values() #方法:值
    D.items() #返回(键,值)的元组
    D.copy() #D的副本
    D.get(key,"default") #如果key无值取默认值
    D.update(D2) #把D2合并到D里,会覆盖相同的值
    D.pop(key) #删除
    len(D) #D的长度(存储的元素数目)
    D[key] =42 #新增;删除键
    del D [key] #删除键
    list(D.keys()) #D的key形成的列表
    D1.keys() & D2.keys() #字典键的交集
    D4 = {x: x*2 for x in range(10)} #使用表达式创建字典 {0: 0, 1: 2, 2: 4, 3: 6, 4: 8, 5: 10, 6: 12, 7: 14, 8: 16, 9: 18}
    D5 = {x: x*2 for x in "SPAM"} # {'S': 'SS', 'P': 'PP', 'A': 'AA', 'M': 'MM'}
    D6 = {x.lower(): x+"!" for x in "SPAM"} # {'s': 'S!', 'p': 'P!', 'a': 'A!', 'm': 'M!'}
    D7 = {k:0 for k in ['a','b','c']}
    

    字典的排序

    • 字典不可以直接排序,但是可以通过键构成的列表进行排序从而实现顺序读取
    D = {'a':1,'c':3,'b':2}
    ks = list(D.keys())
    ks.sort()
    for k in ks:
        print(k,D[k])
    
  • 相关阅读:
    做汉堡
    第三次作业:五章感想与问题
    第二次作业:结对练习
    自己要的东西
    存在不知道是什么问题的程序
    第一个Sprint冲刺第二天
    第一个Sprint冲刺第一天
    第三个Sprint完结工作 用场景来规划测试工作.
    beta 阶段的 postmortem 报告
    重新评估团队贡献分
  • 原文地址:https://www.cnblogs.com/yingyingdeyueer/p/11769317.html
Copyright © 2020-2023  润新知