容器类型数据

可哈希数据:(不可变数据) Number(int , float , bool ,complex) str , tuple
可哈希数据可以作为字典的键和集合的值,剩下的都不可以

不可哈希数据:(可变数据) list dict set

字典中的键 推荐使用按照变量命名的字符串去声明最为理想

1.str 字符串 可获取,不可修改,有序

字符串可以通过索引下标取值

可获取
 0 1 2 3 45 6 7 9 正向索引
strvar = "瞅你一眼,浑身哆嗦"
 -9-8-7-6-5-4-3-2-1 逆向索引
#获取"眼"字
res = strvar[3]
res = strvar[-6]
print(res)

 可以修改么? 不可修改
strvar[3] = 123 error

 

2.list 列表 可获取,可修改,有序

1.定义一个空列表
listvar = []
print(listvar)
print(type(listvar))

 2.获取列表元素
              0 1 2 3 4 正向索引
listvar = [55,3.155,True,3+9j,"abcdf"]
               -5 -4 -3 -2 -1 逆向索引

res = listvar[2]
print(res)

拿到列表最后一个元素
res = listvar[-1]
print(res)

修改列表元素

listvar[0] = 11
print(listvar)

 

3.tuple 元组 可获取 不可修改 无序

定义一个空元组 *********
tuplevar = ()
print(tuplevar,type(tuplevar))
 判断它是否是元组,在于,逗号 *********
tuplevar = ("abc",)
tuplevar = 1,2
print(tuplevar,type(tuplevar))
定义一个元组
tuplevar = ("李祥海","王成全","赖廷","银燕","毕杨生")


 获取元组当中的值
res = tuplevar[2]
print(res)

 修改元组中的值? 不可以
#tuplevar[0] = 123 error

 

4.集合 set (集合是用来做交叉并补操作的) 不可获取,不可修改,无序

定义一个空集合
 setvar = {} # 这个dict字典类型
print(setvar,type(setvar))

setvar = set()
print(setvar,type(setvar))

setvar = {"刘德华","张学友","郭富城","王文"}
print( setvar , type(setvar) )
setvar = {"刘德华","张学友","郭富城","王文","王文"}
print(setvar)

集合能够获取值么? 不行
res = setvar[0] error

集合能够修改值么? 不行
setvar[0] = 199 error

setvar = {1,2,"a",(1,2,3,{"a":1}) }
print(setvar)

5.dict 字典 可获取,可修改,无序

dictvar = {}
print(dictvar, type(dictvar))

dictvar = {"top":"夏侯惇" , "middle":"亚瑟","bottom":"鲁班七号","jungle":"刘备","support":"蔡文姬"}

 通过键获取字典中的值
res = dictvar["middle"]
print(res)

 修改字典的中的值
dictvar["bottom"]="孙尚香"
print(dictvar)

字典中的键和集合中的值有要求,需要可哈希数据

dictvar = {5:1 , 3.78:12 , True:90 , 6+8j:"abc" , "你好":99,(1,2,3):1122}
print(dictvar)

posted on 2019-07-03 17:48  weekzhou  阅读(242)  评论(0编辑  收藏  举报