Python学习笔记:集合数据类型

本文详细介绍了Python中的集合数据类型,包括列表、元组、集合和字典的基本操作,如添加、删除、访问元素、修改、排序和成员关系判断。对于列表,讲解了切片、遍历、添加元素、删除元素、修改元素等;元组虽不可变,但可以连接和获取元素;集合提供了无序、不重复的元素存储,支持集合运算;字典则是一种键值对的数据结构,允许通过键来访问和修改元素。
摘要由CSDN通过智能技术生成

集合数据类型

Python 语言中有四种集合数据类型:

  • 列表(List)
  • 元组(Tuple)
  • 集合(Set)
  • 字典(Dictionary)

选择集合类型时,了解该类型的属性很有用。他们在总体功能上都起着存放数据的作用,却都有着各自的特点。

列表

列表(list)是一个有序且可更改的集合,可以存放任意数据类型,包括列表本身。使用方括号[ ]来创建一个列表。

list1 = [1, 3.14, "hello", [1, 2, 3]]

与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。

列表的转换

可以使用工厂函数把其他数据类型转化为list,要求原数据类型是可迭代对象(即能被for循环遍历的),如list、tuple、dict、set、str。

list1 = list("abc")
print(list1, type(list1))
# 输出:['a', 'b', 'c'] <class 'list'>

访问表元素

  • 索引

    与字符串类似,列表可以通过下标访问列表中的元素,下标从0开始计数。

    列表支持正向索引、负向索引。

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    print(list1[0], list1[3], list1[-2])
    # 输出:a d g
    
  • 切片

    切片是通过下标访问列表中的元素,切片可以取出一个子列表。

    语法格式:

    list [ start : end : step ]
    
    • start表示切片的开始位置,默认为0。
    • end表示切片的终止位置(但不包含该位置的元素),默认为列表的长度。
    • step为切片的步长,默认为1,当省略步长时,可以同时省略后一个冒号;当步长为负数时,表示从end向start取值。

    如:

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    print(list1[0:5])
    print(list1[6:3:-1])
    # 输出:
    # ['a', 'b', 'c', 'd', 'e']
    # ['g', 'f', 'e']
    

    还可以使用slice()函数来切片。语法格式和上面的切片方式类似。

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    x = slice(0, 8, 3)
    print(list1[x])
    # 输出:['a', 'd', 'g']
    
  • 遍历列表

    使用 for 循环来遍历列表项:

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    for i in list1:
        print(i, end=' ')
    # 输出:a b c d e f g h
    

添加元素

使用append()insert()extend()函数来添加列表元素。

  • append()函数

    用于在列表的末尾追加新的元素,无返回值。如:

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    list1.append("g")
    print(list1)
    # 输出:['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'g']
    
  • insert()函数

    用于在列表的中间插入元素,无返回值。

    语法格式:

    list.insert(index, obj)
    

    其中,index是要插入元素的索引,obj是要插入的元素。如:

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    list1.insert(3, "i")
    print(list1)
    # 输出:['a', 'b', 'c', 'i', 'd', 'e', 'f', 'g', 'h']
    
  • extend()函数

    用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表),无返回值。

    注意,extend()内追加的元素必须是可转换为list的类型的元素。

    list1 = ["a", "b", "c", "d", "e", "f", "g", "h"]
    str1 = "hello"
    list1.extend(str1)
    print(list1)
    # 输出:['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'h', 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值