Python入门基础(组合数据类型)

本文详细介绍了Python中的集合和序列类型,包括集合的创建、操作符、处理方法,以及序列的定义、操作符、函数和方法。还分别探讨了元组和列表的特性及其操作,并介绍了字典的使用和相关方法。内容覆盖了Python数据结构的基础知识,有助于理解Python编程中的数据组织和操作。
摘要由CSDN通过智能技术生成

集合类型定义

        集合类型与数学中的集合概念一致,集合元素之间无序,每个元素唯一,不存在相同元素集合元素不可更改,不能是可变数据类型。集合用大括号‘{}’表示,元素间用逗号分隔建立集合类型用大括号‘{}’或set(),建立空集合类型,必须使用set()
     

A = {"123", 456, (123, 456)}  # 使用括号建立集合>>>{456, (123, 456), '123'}

B = set("123456")  # 使用set建立集合>>>{'6', '2', '4', '5', '1', '3'}

C = {"123", 456, "123", 456}  # 元素唯一且无序>>>{456, '123'}

   
集合操作符
        

操作符及应用描述
S=T并,返回一个新集合,包括在集合S和T中的所有元素
S-T差,返回一个新集合,包括在集合S但不在T中的元素
S&T交,返回一个新集合,包括同时在集合S和T中的元素
S^T补,返回一个新集合,包括集合S和T中的非相同元素
S<=T或S<T返回True/False,判断S和T的子集关系
S>=T或S>T返回True/False,判断S和T的包含关系
S |= T并,更新集合S,包括在集合S和T中的所有元素
S -= T差,更新集合S,包括在集合S但不在T中的元素
S &= T交,更新集合S,包括同时在集合S和T中的元素
S ^= T补,更新集合S,包括集合S和T中的非相同元素

A = {123, "456", "p", "y"}
B = set("python")

print("A|B:", A | B)
print("A&B:", A & B)
print("A^B:", A ^ B)
print("A-B:", A - B)
# A|B: {'o', 'y', '456', 'p', 't', 'h', 'n', 123}
# A&B: {'p', 'y'}
# A^B: {'h', 't', 'o', 'n', '456', 123}
# A-B: {'456', 123}

集合处理方法

操作函数或方法描述
S.add(x)如果x不在集合S中,将x增加到S
S.discard(x)移除S中元素x,如果x不在集合S中,不报错
S.remove(x)移除S中元素x,如果x不在集合S中,产生KeyError异常
S.clear()移除S中所有元素
s.pop()随机返回S的一个元素,更新S,若S为空产生KeyError异常
S.copy()返回集合S的一个副本
len(S)返回集合S的元素个数
x in s判断S中元素x,x在集合S中,返回True,否则返回False
x not in s判断S中元素x,x不在集合S中,返回True,否则返回False
set(x)将其他类型变量x转变为集合类型


序列类型定义

        序列是具有先后关系的一组元素。序列是一维元素向量,元素类型可以不同,类似数学元素序列:S0, S1, … , Sn-1,元素间由序号引导,通过下标访问序列的特定元素。

通用操作符        

操作符及应用描述
x in s如果x是序列s的元素,返回True,否则返回False
x not in s如果x是序列s的元素,返回False,否则返回True
s + t连接两个序列s和t
s*n或n*s将序列s复制n次
s[i]索引,返回s中的第i个元素,i是序列的序号
s[i:j]或s[i: j: k]切片,返回序列s中第i到j以k为步长的元素子序列


序列函数和方法

        

函数和方法描述
len(s)返回序列s的长度,即元素个数
min(s)返回序列s的最小元素,s中元素需要可比较
max(s)返回序列s的最大元素,s中元素需要可比较

s.index(x)或

s.index(x, i, j)

返回序列s从i开始到j位置中第一次出现元素x的位置
s.count(x)返回序列s中出现x的总次数


元组类型的定义

        元组是序列类型的一种扩展。是一种序列类型并继承序列类型全部通用操作,一旦创建就不能被修改,使用小括号()或tuple()创建,元素间用逗号分隔。可以使用或不使用小括号。

A = (123, 456, 789)
B = (0x1100, 321, A)

print(A)  # (123, 456, 789)

print(B)  # (4352, 321, (123, 456, 789))

列表类型的定义

        列表序列类型的一种扩展,十分常用,创建后可以随意被修改,使用方括号“[]”或list()创建,元素间用逗号分隔。列表中各元素类型可以不同无长度限制

列表中函数和方法

        

函数或方法描述
ls[i]= x替换列表ls第i元素为x
ls[i: j: k] = lt用列表lt替换ls切片后所对应元素子列表
del ls[i]删除列表ls中第i元素
del ls[i: j: k]删除列表ls中第i到第j以k为步长的元素
ls + = lt更新列表ls,将列表lt元素增加到列表ls中
ls *= n更新列表ls,其元素重复n次
ls = ["python", "java", "C语言"]
ls[1:2] = ["C++"]
print(ls)  # ['python', 'C++', 'C语言']
print(ls*2) # ['python', 'C++', 'C语言', 'python', 'C++', 'C语言']


 

函数或方法描述
ls.append(x)在列表ls最后增加一个元素x
ls.clear()删除列表ls中所有元素
ls.copy()生成一个新列表,赋值ls中所有元素
ls.insert(i,x)在列表ls的第i位置增加元素x
ls.pop(i)将列表ls中第i位置元素取出并删除该元素
ls.remove(x)将列表ls中出现的第一个元素x删除
ls.reverse()将列表ls中的元素反转
ls = ["tiger", "dog", "cat"]
ls.append("mouse")
print(ls)  # ['tiger', 'dog', 'cat', 'mouse']
ls.insert(4, "fish")
print(ls)  # ['tiger', 'dog', 'cat', 'mouse', 'fish']
ls.reverse()
print(ls)  # ['fish', 'mouse', 'cat', 'dog', 'tiger']
lt = []  # 定义一个空列表
lt += [1, 2, 3, 4]  # 添加四个元素
lt[2] = 5  # 将下标为2的元素赋值为5
lt.insert(2, 6)  # 在下标为2元素前插入值为6的元素
del lt[2]  # 删除下标为2的元素值
del lt[1:3]  # 删除小标1至2的元素值
print("当前列表包含数字0") if 0 in lt else print("当前列表不包含数字0")  # 当前列表是否包含数字0
lt.index(4)  # 得到下标为4的元素值
len(lt)  # 当前列表长度
max(lt)  # 当前列表最大值
lt.clear()  # 清空列表


字典类型的定义

        字典类型是“映射”的体现,键值对:键是数据索引的扩展。字典是键值对的集合,键值对之间无序。采用大括号和dict()创建,键值对用冒号:表示{<键1>:<值1>,<键2>:<值2>, ... ,<键n> :<值n>}。

        

d = {1: "小明", 2: "张三", 3: "李四"}
print(d)  # {1: '小明', 2: '张三', 3: '李四'}
print(d[1])  # 小明
print(type(d))  # <class 'dict'>

字典中函数和方法

        

函数或方法描述
del d[k]删除字典d中键k对应的数据值
k in d判断键k是否在字典d中,如果在返回True,否则Fal
d.keys()返回字典d中所有的键信息
d.values()返回字典d中所有的值信息
d.items()返回字典d中所有的键值对信息


      

d = {1: "小明", 2: "张三", 3: "李四"}
print(1 in d)  # True
print(d.keys())  # dict_keys([1, 2, 3])
print(d.values())  # dict_values(['小明', '张三', '李四'])
print(d.items())  # dict_items([(1, '小明'), (2, '张三'), (3, '李四')])

函数和方法描述
d.get(k,<default>)键k存在,则返回相应值,不在则返回<default>值
d.pop(k,<default>)键k存在,则取出相应值,不在则返回<default>值
d.popitem()随机从字典d中取出一个键值对,以元组形式返回
d.clear()删除所有的键值对
len(d)返回字典d中元素的个数

d = {}  # 定义一个空字典
d["名称1"] = "张三"  # 增加两个键值对元素
d["名称2"] = "李四"
d["名称3"] = "王五"

d["名称2"] = "李三"  # 修改键为“名称2”的元素
print("名称2键在当前字典中") if "名称2" in d else print("名称2键不在当前字典中")  # 判断“名称2”是否在当前字典中
print(len(d))  # 字典长度
d.clear()  # 清空字典

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值