元组、字典重点

一、元组

1.元组的方法

元素不可被修改,不能被增加或者删除

tuple
tu = (11,22,33,44,)
tu.count(22),获取指定元素在元组中出现的次数
tu.index(22)

2.元组支持的操作

1.元组的一级元素不可修改/删除/增加 (二级中如果是列表之类可便的元素,则元素里面是支持改的)
tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
元组,有序。
v = tu[3][0][0]
print(v)
v=tu[3]
print(v)
tu[3][0] = 567
print(tu)

2. 索引
v = tu[0]
print(v)

3. 切片
v = tu[0:2]
print(v)

4. 可以被for循环,可迭代对象
for item in tu:
print(item)

5. 转换
s = "asdfasdf0"
li = ["asdf","asdfasdf"]
tu = ("asdf","asdf")

v = tuple(s)
print(v)

v = tuple(li)
print(v)

v = list(tu)
print(v)

v = "_".join(tu)
print(v)

li = ["asdf","asdfasdf"]
li.extend((11,22,33,))
print(li)

二、字典

value可以是任何值

key的特性:
1、字典中的key必须唯一
2、key必须是不可变对象,有_hash_方法的才能作为键
3、字符串、整数等都是不可变的,可以作为key
4、list是可变的,不能作为key

列表、字典不能作为key

布尔值可以为key
但是True在内存中存的是1 False存的是0
2 3 4 5被认为是真

False: "" None 0 () [] {}
其他都是真

字典是无序的,可通过索引查找元素,支持del删除

1.字典的方法

dic = {"k1": 'v1', "k2": 'v2'}
# 1 根据序列,创建字典,并指定统一的值
v = dict.fromkeys(["k1",123,"999"],123)
print(v)

>>>{'k1': 123, 123: 123, '999': 123}

# 2 根据Key获取值,key不存在时,可以指定默认值(None)
v = dic.get('k1')
print(v)
v = dic.get('k111',111111)
print(v)

>>>

v1
111111

# 3 删除并获取值
dic = {"k1": 'v1', "k2": 'v2'}
v = dic.pop('k1',90)
print(dic,v)

从右边开始删除
k,v = dic.popitem()
print(dic,k,v)

#4 更新
dic = {"k1": 'v1', "k2": 'v2'}
dic.update({'k1': '111111','k3': 123})
print(dic)
dic.update(k1=123,k3=345,k5="asdf")
print(dic)

2.字典支持的操作

1.for循环

for item in info:
print(item)

for item in info.keys():
print(item)

for item in info.values():
print(item)

for item in info.keys():
print(item,info[item])

for k,v in info.items():
print(k,v)

原文地址:https://www.cnblogs.com/lishuaing/p/10666706.html