Python学习笔记之集合

  1. list
    list采用“[]”(方括号)的方式定义。list使用方法:

    • list可通过下标获取元素,下标从0开始
    • list还可以从从后往前获取元素,下标为-1、-2、-3以此类推
    • len(list):获取list长度(该函数不是list的成员函数)
    • append(element):往list中追加元素到末尾
    • insert(index, element):在index下标处插入一个元素
    • pop():删除List末尾的元素
    • pop(index):删除index处的元素
    # 获取list中下标为0和-1元素
    l = [0, 1, 2, 3, 4, 5]
    print(l[0])
    print(l[-1])
    # Outputs
    # 0
    # 5
    
    
    # 取list的长度
    print(len(l))
    # Outputs
    # 6
    
    
    # 添加元素
    l.append(6)
    print(l)
    # Outputs
    # [0, 1, 2, 3, 4, 5, 6]
    
    
    # 插入元素
    l.insert(0, -1)
    print(l)
    # Outputs
    # [-1, 0, 1, 2, 3, 4, 5, 6]
    
    
    # 删除末尾元素
    l.pop()
    print(l)
    # Outputs
    # [-1, 0, 1, 2, 3, 4, 5]
    
    
    # 删除指定位置元素
    l.pop(0)
    print(l)
    # Outputs
    # [0, 1, 2, 3, 4, 5]
    
  2. tuple
    tuple也是一种list,只不过tuple一旦初始化便不可修改。tuple采用“()”(圆括号)的方式定义。我们知道Python定义一个对象是无需写明对象类型的,当tuple只有一个元素时,这样的定义就会出问题。代码如下:

    # python默认创建一个int数据,而不是tuple
    t = (1)
    

    这样定义时无法识别是定义一个int变量还是tuple变量。Python对此作出了特殊规定,定义只有一个元素的tuple,需要用到逗号“,”,代码如下:

    # 创建一个只有一个元素的tuple
    t = (1,)
    

    这样就不会产生歧义了。

  3. dict
    dict全称为dictionary,即Java中的Map集合。dict以键值对(Key-Value)的方式存储数据,采用“{key_1: value_1, key_2: value_2}”的方式定义。
    有一个需要注意的地方,dict通过键查找值是通过哈希函数来计算位置的,这就要求dict得键必须是不可变对象。
    下面代码展示dict的操作方法:

    # dict的创建
    age = {"zhangsan": 20, "lisi": 22, "wangwu": 19}
    
    
    # dict的访问。有两种方式,其一类似数组访问,用key做下标,若key不存在,则报错
    age["zhangsan"]
    # 另一种是用get(key)方法获取,此方法有个好处,当key不存在时,返回None
    age.get("zhangsan")
    # get()方法还能指定key不存在时返回的值,此时返回值为-1
    age.get("zhaoliu", -1)
    
    
    # dict的添加与修改,若key存在,则修改该key的值,若不存在,则添加该键值对
    age["zhangsan"] = 21
    
    
    # dict的删除,通过pop(key)的方式删除键值对
    age.pop("zhangsan")
    
    
    # dict判断key是否存在,返回为布尔值。下面语句第一条返回Ture,第二条返回False
    "zhangsan" in age
    "zhaoliu" in age
    
  4. set
    和Java中的Set集合一样,set存储不重复的key值。set习惯采用“{}”(花括号)的方式定义。set的操作方法如下:

    # set有两种创建方法。第一种,通过传入一个list
    s1 = set([1, 2, 3])
    # 第二种,采用“{}”(花括号)的方式定义
    s2 = {1, 2, 3}
    
    
    # set添加元素。通过add(key)添加元素。可以重复添加,但是只有第一次添加才有效果
    s1.add(5)
    
    
    #set删除元素。通过remove(key)方法删除指定元素
    s2.remove(3)
    
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值