1. list

1.1 基础

list是一组有序的集合序列,可以包含任何类型且不必相同,并支持嵌套。采用如下创建方式:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
1 li = ["spam",2.0,5,[10,20]]

 列表支持索引、切片,组合

 

1 v2= li[1]   # 索引
2 v2= li[0:2]    #切片
3 
4 a = [1,2,3]    #合并
5 b = [3,4,5]
6 c = a + b
7 
8 —》c = [1,2,3,3,4,5]
9 # 多列表合并成新列表,新列表含有原列表所有元素(包括重复的)

 

列表是可变类型,可以再赋值

1 li[2] = 6

列表是可迭代类型,可以for循环遍历 

1 for item in li:
2     print(item)
3 # 上述的循环仅仅是读取元素,若要读取并改写元素则需索引
4 
5 for i in range(len(li)):
6     li[i = li[i] * 2

 1.2 方法

 1 #!/usr/bin/env python
 2 # -*- coding:utf8 -*-
 3 
 4 li = [1,"age",["是正文“,["19","10"]],True]
 5 
 6 # 在原有的列表基础上追加,list是可变类型,无需赋值
 7 li.append(5)
 8 
 9 # 清空列表
10 li.clear
11 
12 # 拷贝,浅拷贝,改变拷贝后的列表对原列表无影响
13 v = li.copy()
14 
15 # 计算元素出现的次数
16 v = li.count(7)
17 
18 # 传入可迭代对象,扩展原列表
19 v = li.extend([11,"sasdqsw"])
20 v = li.ectend("cwd")
21 
22 # 指定索引位置插值
23 li.insert(0,99)
24 
25 # 根据索引删除元素,并获取被删除元素,默认删除最后一个,索引超出范围报错
26 v = li.pop(2)
27 print(v)
28 print(li)
29 
30 # 根据指定值删除元素(左侧优先),没有该元素报错
31 li.remove(99)
32 
33 # 将当前列表反转
34 li.reverse()
35 
36 # 排序,跨类型无法排序
37 li.sort()

 2. tuple

2.1 基础

元组是一组有序集合,可包含任何类型,支持嵌套;元组定义时在最后元素后加上一个逗号

1 tu = (1,2,[333,"dd"],"sss",)

元组支持索引,切片。

元组是不可变类型,一级元素不可被修改,不可被增加或删除,但是一级元素是可变类型,则该元素内部可修改。

元组是可迭代类型,支持for循环遍历。

字符串可以转换为列表、元组,列表、元组可以相互转换。对于包含相同类型的列表或元组,通过.join()方法转换为字符串

 1 s = "dscnkwe"
 2 
 3 li = list(s)
 4 tu = tuple(s)
 5 
 6 tu = tuple(li)
 7 li = list(tu)
 8 
 9 s = "".join(li)
10 s = "".join(tu)

 2.2 方法

1 #!/usr/bin/env python
2 # -*- coding:utf8 -*-
3 
4 # .count() 获取指定元素的个数
5 v = tu.count(3)
6 
7 # .index() 获取指定元素的索引
8 v = tu.index(3)

 3. dict

3.1 基础

 字典时无序的键值对组合,字典Value可以是任何类型,key必须是不可变类型(整型,布尔值,字符串,元组),列表和字典不能作为字典的key。

 1 info = {
 2     1:18,
 3     "k2":True,
 4     False:[
 5         11,
 6         22,
 7         33,
 8         {
 9             "kk1":"vv1",
10             "kk2":"vv2",
11             "kk3":(11,22,)
12         }
13     ],
14     ("qq",):(11,22,33,44,)
15 }

 通过key找到某一元素

v = info[False][3]["kk3"][0]

 

删除某一元素

1 del info["k2"]

 

3.2 方法

 

 1 #!/usr/bin/env python
 2 # -*- coding:utf8 -*-
 3 
 4 # for 循环遍历,默认循环key
 5 for item in info:
 6 
 7 # 使用.value()方法循环遍历value
 8 for item in info.values():
 9 
10 # 使用.items()方法循环遍历键值对
11 for item in info.items():   #获取键值对的元组型表示
12 for k,v in info.items():    #获取键值对
13 
14 # 根据传入的key获取value,value不存在,可以指定返回值,默认是None
15 v = info.get("k2",-1)
16 
17 # 根据key设置值;key存在,不设置,获取当前key对应的value;key不存在,设置,获取设置值
18 v = info.setdefault("3333",123)
19 
20 # 清空字典
21 info.clear()
22 
23 # 浅拷贝
24 info.copy()
25 
26 # 静态方法,第一个参数传入可迭代序列,根据序列创建字典的key,并指定统一的值
27 info = dict.fromkeys((1,2,3),123)
28 
29 # .pop()指定key删除并获取value,.popitem()随机删除并获取键值对
30 v = info.pop("k2")
31 k,v = info.popitem()
32 
33 # 更新,传入字典;key存在就更新,不存在就加上
34 info.update({1:19,"jjw":"xmx"})
35 print(info)

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄