#数据类型划分:可变数据类型,不可变数据类型
不可变数据类型:元组,bool int str 可哈希
可变数据类型:list,dict set 不可哈希
dict key 必须是不可变数据类型,可哈希,
value:任意数据类型。
dict 优点:二分查找去查询
存储大量的关系型数据
特点:无序的
#55
#20
#60
#40
#50
#55
1.列表之增
# list 增 有三种方法
# append 追加到末尾
# insert 下标插入
# extend 将值分解到最小元素追加到末尾
li=[1,"nihao",[1,2,3],(1,2,3)]
li.append("555")
li.insert(2,'插入的')
li.extend('nimen')
print(li)
View Code
2. 列表之删
# 删 有四中方法
# pop()根据下标来删除元素 能返回删除的值
# remove()根据值来删除元素 没有返回值
# clear()删除列表中的所有元素 变为空列表
# del li[1:2] 切片删除元素
li=[1,"nihao",[1,2,3],(1,2,3),"你好"]
s=li.pop(1)
li.remove("你好")
li.clear()
del li[2:]
print(li)
View Code
3.列表之改
# 改 切片改
li=[1,"nihao",[1,2,3],(1,2,3),"你好"]
li[1]="不好"
print(li)
View Code
4.列表之查
for循环便利 例如
# 查 也可以切片查
li=[1,"nihao",[1,2,3],(1,2,3),"你好"]
for i in li:
print(i)
for i in li[2:]:
print(i)
# 也可以for i range li切片
View Code
5.list排序
# 排序
# 正向排序 li.sort() 12345.....
# 反向排序 li.sort(reverse=True) 98765.....
# 反转排序 li.reverse() 从末尾按顺序排序
li=[1,3,6,5,7,4,8,9]
li.sort()
li.sort(reverse=True)
li.reverse()
print(li)
View Code
6.元祖 只读列表,可循环查询,可切片。儿子不能改,孙子可能可以改。
7.list嵌套 for嵌套
将li打印出li = [1,2,3,5,'alex',2,3,4,5,'taibai','afds']
li = [1,2,3,5,'alex',[2,3,4,5,'taibai'],'afds']
for i in li:
if type(i)== list:
for j in i:
print(j)
else:
print(i)
for i in range (len(li)):
if type (li[i])==list:
for j in li[i]:
print(j)
else:
print(i)
View Code
8. 拼接与分割方法
ps:
join: list ----->str
S.join(iterable)
li = [1,2,3]
s1 = str(li)
split str---->list
View Code
9.dict 字典 之增
# 增
# 直接增加 dic1["你好"]=12 如果字典中存在这个key 则会把先加进去的值覆盖原有的
# dic1.setdefault增 如果字典中存在这个key 那么字典中不加入值
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
dic1["你好"]=12
dic1.setdefault("高")#如果不加入值一起加入 则会加入'高':'None'
print(dic1)
View Code
10.字典之删
# 删
# dic1.pop("") 此方法可以用来查询字典中是否存在这个key对应的值 例 se=dic1.pop(key,'没有此键')
# 如果字典中存在此key 返回对应值 如果没有此key 则返回'没有此键'
se=dic1.pop("age")
print(se)
View Code
11.字典之改
#改
# dic,update(dic1) 将dic1的元素更新到dic 同样的key 值覆盖 不同的可以加入
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
dic={'name':'666','nihao':'不好',666:'不是'}
dic.update(dic1)
print(dic)
View Code
12.字典之查
# 查
# dic1.keys()获取到所有key
# dic1.values()获取到所有值
# dic1.items()获取到所有键值对元祖[(key,值),(),()....]
# se=dic1.get('name')根据可以来查值 当字典不存在此key时返回None 字典存在则返回对应值
dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
for i in dic1.keys():
print(i)
for i in dic1.values():
print(i)
for i in dic1.items():
print(i)
for k,v in dic1.items():
print(k,v)
se=dic1.get('1')
print(se)
View Code
13.字典嵌套 与list嵌套同理