组合数据类型 语法基础【基本操作】
类型:列表list 元组tuple 集合set 字典
列表list:通过一堆方括号包含起来的数据序列,可以存放重复数据
特点:按照有顺序的方式存储多个可以重复的数据。
声明:
空列表的声明:
x=list() 推荐
x=[]
非空列表的声明:
x=list([1,2,3,4,5,5])
x=[]1,2,3,4,5,5]
数据操作——增加:
append(obj):末尾增加数据
insert(index,obj):指定位置增加数据,index为指定的位置
extened(sep):末尾追加一组数据
数据操作——删除:
del x[index]:根据索引号/下标/编号删除数据
index 必须是列表长度范围内的编号~下标越界错误Index Out…
remove(obj):删除一个具体的数据
pop():删除末尾的一个数据
clear():清空列表中的所有数据
del x:删除列表
数据的操作——修改:
x[index]=new value 通过下标/编号 直接给当前编号的数据重新赋值
数据的操作——查询:
x[index] 通过下标/编号直接查询该位置的数据
for x1 in x
print(x1)将x列表中的数据依次存放到x1中并展示出来
列表的扩展:
x.count(obj):查看某个指定的数据obj 在列表x中出现的次数
x.index(obj):查看某个指定数据obj 在列表中的位置[编号]
x.sort():按照自然顺序排序
x.reverse():反转列表
len(x):查看列表的长度;查看列表中是否有数据
max(x)/min(x):针对列表中的数据进行最大值~最小值的判断
扩展:
dir():查看某个指定的模块中都有哪些操作方式
help():查看某个具体的功能的集合。
元组tuple:是列表的一种特殊形式,一旦声明创建就不允许改变。
语法结构:使用一对圆括号包含起来的一组数据,可以存放重复数据
注意:元组中如果存放的是其他的内容、可变的元素的话,一定要注意此时的元组中对象的数据是可变的
特点:可以存储多个可以重复的有顺序的,不能修改的数据。
声明:
t=tuple() 声明一个空元组
t=() 声明一个空元组
t=tuple([‘hello’]) 声明包含一个元素的元组,不推荐
t=(‘hello’) 不是一个元组,括号被当成了运算符号。
t=(‘hello’,) 这是包含单个元素的元组,后面加一个英文逗号区分
t=tuple([“hello”,”world”]) 声明包含多个元素的元组,不推荐
t=(“hello”,”world”) 声明包含多个元素的元组
t=”hello”,”world” 声明包含多个元素的元组
tuple(obj) 类型转换,将括号中包含的数据,转换成元组,
数据的操作:增加、删除、修改、查询
元组的特殊性:元组只能查看
dir(tuple):查看元组都有哪些操作
“count”,:查看某个指定的数据,在元组中出现的次数
“index”:查看某个指定的数据在元组中的位置
len(x)查看元组中元素的个数/总数
max(x)/min(x):查看最大/最小值
集合set:和列表类似,但是不能存储相同的数据;
注意:集合set中存放数据是不能重复的,并且是没有存放顺序的,也就是没有下标的。
语法:使用一对大括号/花括号包含起来的一组数据
特点:可以存放多个 不能重复没有顺序 的可以修改的数据
声明:
s=set() 声明一个空集合
s=set([]) 声明一个空集合
s=set([1,2,3,4]) 声明一个非空集合
s={1,2,3,4} 声明一个非空集合
数据操作:增加、删除、修改、查询
dir()
help()
数据的操作——增加
s={“tom”,”shuke”,”beita”,”hello”}
print(“------- s------>”,s)
s.add(“jerry”)
print(“------- s.add(“jerry”)------>”,s)
数据的操作——修改:
#完整流程:查询得到数据,修改数据的值
#成员运算符 in
print(“hello” in s)
#修改hello数据为olleh
if “hello” in s:
s.remove(“hello”)
s.add(“olleh”)
print(“s”)
数据的操作——查询:只有循环遍历~
for x in s:
print(“------- for x in s:------>”,x)
数据的操作——删除:
s.pop() #随机删除一个数据
print(“-------s.pop()------>”,s)
s.remove(“hello”) #删除一个具体的数据
print(“------- s.remove(“hello”)-------->”,s)
s.clear() #清空集合中的数据
print(“------- s.clear()-------->”,s)
拓展:
s1={1,2,3,4,5,6}
s2={4,5,6,7,8,9}
#并集
s1.union(s2)
#更新操作
s1.update(s2)
# 差集
s1.difference(s2)
# 更新操作
s1.difference_update(s2)
# 交集
s1.intersection(s2)
# 更新操作
s1.intersection_update(s2)
字典dict:通过key-value键值对的形式来存储数据,可以很方便的通过key来对value进行增删改查的操作
特点:可以存放多组key-value 键值对 的 键不能重复 值可以重复的数据对。
声明:
d = dict() # 声明一个空字典【推荐】
d = {} # 声明一个空字典
d = {‘key’: ‘value’, ‘key2’: ‘value2’} #声明一个非空字典【推荐】
key对应的数据value
key2对应的数据value2
d = dict([(‘k1’, ‘v1’), (‘k2’, ‘v2’)]) 相当于 d = {‘k1’:‘v1’, ‘k2’: ‘v2’}
字典:在某些场合也称为映射,体现的是一一对应关系,可以通过key找到value
类比:对比列表~字典中的key值相当于列表中的编号
users列表 users[0]表示了一个用户
users[0][1]表示了用户的密码
users字典 users[‘admin’]表示了一个账号为admin的用户
users[‘admin’][‘passsword’]表示了该用户的密码
数据操作:增加数据、删除数据、修改数据、查询数据/遍历
'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values'