组合数据类型

一、集合

一、无序和不可改变等特点,集合支持数学理论中的各种集合运算。

集合常量也可用内置的set()函数创建集合对象set()函数的参数为可迭代对象,如列表、字符串等。无参数时,set()函数创建一个空集合对象。空集合对象用set()表示,空字典对象用{}表示

集合中的元素不允许有重复值,在创建集合对象时,Python会自动去除从复值

集合的常用操作:

a = {1, 2, 'a', 'bc'}

b = {1, 'a', 5}
print(len(a))         # 求长度:计算集合中元素的个数  4 
print('a' in a)        # 判断包含:判断集合是否包括数据  True
print(a - b)           # 求差集:用属于set1但不属于set2的元素创建新集合  {2, 'bc'}
print(a | b)           # 求并集:用set1、set2两个集合中的所有元素创建新集合  {1, 2, 5, 'a', 'bc'}
print(a & b)          # 求交集:用同时属于set1和set2的元素创建新集合  {1, 'a'}
print(a ^ b)          # 求对称差:用属于set1但不属于set2以及属于set2但不属于set1的元素创建新集合  {2, 5, 'bc'}
print(a < b)          # 比较:判断子集和超集的关系,x是y的子集时返回True,否则返回False  False

二、列表

列表常量用方括号表示,例如,[1,2,'abc'],也可以使用list()函数来创建,列表的主要特点如下:
1、列表可以包含任意类型的对象:数字、字符串、列表、元组或其他对象。
2、列表是一个有序序列,与字符串类似,可通过位置偏移量执行索引和分片操作。
3、列表是可变的。列表的长度可变,即可添加或删除列表成员。列表元素的值也可改变。
4、每个列表元素存储的是对象的引用,而不是对象本身,类似于C/C++的指针数组。
列表基本操作包括:创建列表、求长度、合并、重复、迭代、关系判断、索引和分片等。

(一)、创建列表
print([1, 2, 3, 4, ('a', 'b'), [12, 34]])            # [1, 2, 3, 4, ('a', 'b'), [12, 34]]
print(list('abcd'))                                       # ['a', 'b', 'c', 'd']
print(list(range(-2, 3)))                             # [-2, -1, 0, 1, 2]
print(list((1, 2, 3)))                                   # [1, 2, 3]
list1 = [item + 10 for item in range(5)]
print(list1)                                                # [10, 11, 12, 13, 14]

(二)、 求长度
print(len([1, 2, 3, 4, ('a', 'b'), [5, 6]]))        # 6

(三)、合并
print([1, 2] + ['abc', 20])                           # [1,2,'abc',20]

(四)、重复
print([1, 2] * 5)                                         # [1,2,1,2,1,2,1,2,1,2]

(五)、关系判断
print(2 in [1, 2, 3])                                     #  False

(六)、索引
list1 = [1, 2, 3, ['a', 'b', 'c']]
list1[2] = 100
print(list1[0], list1[2], list1[-1])

(七)、分片,与字符串类似,可通过分片来获取列表中的连续多个数据,也可以通过分片将连续多个数据替换成新的数据。
list1 = list(range(10))
print(list1[2:5])                                        # [2, 3, 4]
print(list1[2:])                                          # [2, 3, 4, 5, 6, 7, 8, 9]
print(list1[:5])                                          # [0, 1, 2, 3, 4]
print(list1[3:10:2])                                   # [3, 5, 7, 9]
print(list1[10:3:-2])                                  # [9, 7, 5]
list1[2:5] = 'abc'
print(list1)                                                # [0, 1, 'a', 'b', 'c', 5, 6, 7, 8, 9]
list1[2:5] = [10, 20]
print(list1)                                                # [0, 1, 10, 20, 5, 6, 7, 8, 9]

三、

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值