找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
本帖最后由 武汉16期-邓鹏 于 2022-6-24 19:11 编辑

元组 tuple  ()
元组定义:()小括号定义
类型:tuple
元组是不可变的(定义好元组之后不可进行修改,但是可以通过间接方法进行修改)

如果元组中元素只有一个的时候,一定要在后面加上逗号,如果不加,原始元素是什么类型,它打印就是什么类型

列表和元组的区别?
1、类型不同  list、tuple
2、定义不同,列表通过[ ] ,元组通过()定义
3、列表定义之后可以随意的增删改(元素不受保护)
4、元组定义之后是不可随意进行增删改(元素受到保护)

元组也支持切片操作

字典
字典定义:{ } 大括号,花括号
类型:dict
字典中:键值对,键是唯一的,值可以不唯一
键值对用冒号进行分割 {"name":"张三","age":"20"},多个键值对用逗号分割

d1 = {"name":"张三",'age':''}#如果字典中没有值,也要加引号t=[('a',1),('a2',2)]
print(type(t),t)
d=dict(t)
print(d)

d1 = {"name":"张三",'age':''}
d1['score']=100
d1['name']='xiaoming'#原字典中没有相同属性的键,则会添加,有相同属性的键,则会替换值
d1['age']=20
d1.setdefault('sex',1)#添加元素,如果键没有就添加,存在的话,就不生效,也不替换
print(d1.keys())#打印键
print(d1.values())#打印值
del d1['score'] #删除指定键连同值一起删除
del d1 #删除整个字典
print(d1['name'])#指定键查询值
print(d1)

字典遍历:for  变量名  in  字典名称
#for in 遍历字典#通过键求值
for i in d1:   
     print(i,d1)#当前变量获取到的值为键,值不显示,再通过指定键的方式取出值   
#通过items函数直接取出键和值
for a,b in d1.items():   
     print(a,b)

d1 = {"name": "张三", 'age': '','sex':1}

print(d1.pop('sex'))#100  删除指定键返回对应的值
d1.clear()#清空字典
print(d1)#{}
print(d1.get('age1'))#None  通过键获取值,键不存在时,返回none
#fromkeys函数可以给具体的键指定值
print({}.fromkeys(['name', 'age']))#{'name': None, 'age': None} 不指定值,默认none
print({}.fromkeys(['name', 'age'], 'xiaoming'))#{'name': 'xiaoming', 'age': 'xiaoming'}
print(d1.__contains__('name'))#True 检查字典是否有指定键存在,存在返回True
print(d1.popitem())#('sex', 1) 删除字典中的键值对,一般删除末尾对

python2:has_key  函数检查字典是否有指定的键存在
python3:__contains__  函数检查字典是否有指定的键存在

#update 函数利用一个字典更新另外一个字典

d1 = {"name": "张三", 'age': '','sex':1}
d2={'sex':2}
d3={'a':5}
d1.update(d2)#有相同的键值对,会覆盖值
d1.update(d3)#没有相同的键值对,就会追加
print(d1)#{'name': '张三', 'age': '', 'sex': 2, 'a': 5}


#zip函数 将两个列表对应索引位置的元素进行组合

a=['a','b','c']
b=[1,2,3]
c=zip(a,b)
print(type(c))
d=dict(c)
print(d)#{'a': 1, 'b': 2, 'c': 3}


集合
没有切片操作

可变集合 set
不可变集合 frozenset

区别:
相同点:都能够进行去重
不同点:
可变集合里面去重之后,还可以进行增删改
不可变集合里面去重之后,不可以进行增删改
l1=[1,2,3,1,5,1]

s1=set(l1)#可变集合,去重
print(s1,type(s1))#{1, 2, 3, 5}
s1.add(6)#添加
s1.remove(5)#移除
s1.pop()#删除最前面一个元素
# s1.clear()#清空
print(s1)#{2, 3, 6}
f1=frozenset(l1)#不可变集合,去重,不可进行增删改
print(f1)


分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册