一.列表
A 基础格式
1.列表中的元素,只要是你见过的什么数字,字符串,列表,布尔值就都能放进去
2.可以进行切片,切片结果也是列表
li = ["qq", 11, 22, 33, 78] print(li[1:3])
3.可以进行循环
4.删除
li = ["qq", 11, 22, 33, 78] del li[0] print(li)
5.修改 直接赋值
6. in操作
li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex", True] v1 = "石振文" in li print(v1) v2 = "age" in li print(v2)
7.字符串转换列表
s = "pouask" new_li = list(s) print(new_li)
8.列表转换字符串
# 需要自己写for循环一个一个处理: 既有数字又有字符串 li = [11, 22, 33, "123", "alex"] s = "" for i in li: s = s + str(i) print(s) # 直接使用字符串join方法:列表中的元素只有字符串 # li = ["123","alex"] # v = "".join(li) # print(v)
9.列表是有序的
B 函数功能
1.☆☆☆原来值后面追加 列表对象.append(追加内容)
2.清空列表 列表对象.clear
3.拷贝 新列表=旧列表.copy() 新列表和旧列表一样
4.计算元素出现的次数 列表对象.count(某个元素)
5.☆☆☆扩展原函数 列表元素.extend
li=[11,22,33,22,44] li.extend("不得了") print(li)
li = [11, 22, 33, 22, 44] li.extend([9898,"不得了"]) print(li)
6.☆☆☆在指定索引位置插入元素
li = [11, 22, 33, 22, 44] li.insert(0,99) print(li)
7.根据值获取当前值索引位置
li = [11, 22, 33, 22, 44]
v= li.index(22)
8.删除某个值(可指定索引,默认最后一个)还可获取删除的值
li = [11, 22, 33, 22, 44] v = li.pop() print(li) print(v)
9.删除列表中的指定值,左边优先
li = [11, 22, 33, 22, 44]
li.remove(22)
print(li)
10.将当前列表进行翻转
li = [11, 22, 33, 22, 44] li.reverse() print(li)
11.列表的排序
li = [11,44, 22, 33, 22] li.sort() # li.sort(reverse=True) 从大到小 print(li)
二.元组
A.基础格式
1.书写格式
tu = (111,"alex",(11,22),[(33,44)],True,33,44,) 最后一个元素后最好写“,”
逗号,显得规范 元素用括号括住
2.索引 v=tu[0]
3.切片 v=tu[0:2]
4.是可迭代对象,可以循环
tu = (111,"alex",(11,22),[(33,44)],) for item in tu: print(item)
5.字符串转换成元组
s = "asdfasdf0" v = tuple(s) print(v)
6.列表转换成元组
li = ["asdf","asdfasdf"] v = tuple(li) print(v)
7.元组转换成列表
tu = ("asdf","asdf") v = list(tu) print(v)
8.连接元组各元素变成字符串
tu = ("asdf","asdf") v = "_".join(tu) print(v)
9.元组的一级元素不可修改/删除/增加
比如可以修改元组里的一个列表中的元素,想删除这个列表也是不可以的
三、字典
A.基本结构
1.
info = { "k1": "v1", # 键值对 冒号前的是key,后面是value "k2": "v2" }
2.字典中的value可以是任意值
3.布尔值(1,0)、列表、字典不能作为字典的key
4.字典是无序的
5.索引方式找到指定元素,不能切片
info = { "k1": 18, 2: True, "k3": [ 11, [], (), 22, 33, { 'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11,22), } ], "k4": (11,22,33,44) }
v = info['k3'][5]['kk3'][0]
print(v)
6.del删除
7.可以进行for循环
info = { "k1": 18, 2: True, "k3": [ 11, [], (), { 'kk1': 'vv1', 'kk2': 'vv2', } ], "k4": (11,22,33,44) } for item in info: print(item)
for item1 in info.keys(): print(item1)
for item2 in info.values(): print(item2)
for item3 in info.keys(): print(item3, info[item3])
for k, v in info.items(): print(k, v)
运行结果同上
8.in操作
v = "k1" in dic print(v) n = "v1" in dic.values() print(n)
B.函数功能
1.根据序列,创建字典,并指定统一的值
v = dict.fromkeys(["k1",123,"999"],123) print(v)
2.根据key获取值,key不存在时,可以指定默认值
dic = { "k1": 'v1', "k2": 'v2' } v = dic.get('k3',11111)
print(v)
3.删除并获取值
dic = { "k1": 'v1', "k2": 'v2' } v = dic.pop('k1') print(dic,v)
随机删用dic.popitem()
k,v = dic.popitem() #随机删的 print(dic,k,v)
4.设置值
已存在,不设置,获取当前key对应的值
不存在,设置,获取当前key对应的值
dic = { "k1": 'v1', "k2": 'v2' } v = dic.setdefault('k1111','123') print(dic,v)
5.更新字典
dic = { "k1": 'v1', "k2": 'v2' } dic.update({'k1': '111111','k3': 123}) print(dic)
dic.update(k1=123,k3=345,k5="asdf") print(dic)