列表,元组,字典,集合

一、列表

 1 #创建一个列表
 2 names = ['zhangsan','lisi','wangwu','zhaoliu','ruanxiaoqi']
 3 print(names)
 4 
 5 #列表后面增加元素
 6 names.append('lulu')
 7 print(names)
 8 
 9 #指定位置插入元素
10 names.insert(2,'lili')
11 print(names)
12 
13 #打印元素的内容
14 names[2]
15 print(names)
16 
17 #删除元素
18 names.remove('lili')
19 print(names)
20 
21 #删除指定位置元素
22 del names[2]
23 print(names)
24 
25 #删除最后一个元素
26 names.pop()  #names.pop(2) 删除下标为2的元素
27 print(names)
28 
29 #获得已知元素的下标
30 index = names.index('lisi')
31 print(index)
32 
33 #查询列表里的元素个数
34 count = names.count('lisi')
35 print(count)
36 
37 #倒序排列
38 names.reverse()
39 print(names)
40 
41 #排序
42 names.sort()
43 print(names)
44 
45 #names2合并到names
46 names2 = ['linda','michael','peter']
47 names.extend(names2)
48 print(names)
49 
50 #删除names2
51 del names2
52 print(names2)
53 
54 #前copy
55 #copy()方法为浅层复制,复杂类型只复制内存地址并不复制指向的数据
56 names3 = names.copy()
57 print(names3)
58 
59 #深层copy
60 inport copy
61 names3 = copy.deepcopy(names)
62 print(names)
63 print(names3)
64 
65 #循环列表
66 for i in names:
67     print(i)
68 
69 #从0开始到-1,每2个打印一次
70 print(names[0:-1:2])
列表操作

二、元组

1 #定义元组
2 names = ('zhangsan','lisi','wagnwu')
3 #查询'lisi'的下标,有重复的返回左边的下标
4 print(names.index('lisi'))
5 >>1
6 names = ('zhangsan','lisi','wagnwu','lisi')
7 #统计'lisi'有几个
8 print(names.count('lisi'))
元组操作

三、字典

 语法:

1 info = {
2     'stu1101': "TengLan Wu",
3     'stu1102': "LongZe Luola",
4     'stu1103': "XiaoZe Maliya",
5 }

字典的特性:

  • dict是无序的
  • key必须是唯一的,so 天生去重
 1  1 #增加
 2  2 info['stu1101'] = '苍老师'
 3  3 print(info)
 4  4 >>{'stu1101': 'TengLan Wu', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': '苍老师'}
 5  5 
 6  6 #修改
 7  7 info['stu1101'] = "武藤兰"
 8  8 print(info)
 9  9 >>{'stu1101': '武藤兰', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': '苍老师'}
10 10 
11 11 #删除
12 12 info.pop('stu1101')
13 13 print(info)
14 14 >>{'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}
15 15 #删除2
16 16 del info['stu1103']
17 17 print(info)
18 18 >>{'stu1102': 'LongZe Luola'}
19 19 #随机删除
20 20 info.popitem()
21 21 print(info)
22 22 >>{'stu1101': '武藤兰', 'stu1102': 'LongZe Luola'}
23 23 
24 24 #查询'stu1101'是否在字典里
25 25 print("stu1101" in info)
26 26 >>True
27 27 
28 28 #获取key的value
29 29 print(info.get("stu1102"))
30 30 >>LongZe Luola
31 31 print(info["stu1102"])  #同上,但是key为空报错,get返回None
字典操作

 多级字典嵌套操作

info = {'aa':{'aa':['bb']},
        'bb':{'cc':['ae']}
        }
info['aa']['aa'][0]+='cc'
a = info['aa']['aa'][0]
print(a)
>>bbcc

四、集合

 集合是一个无序的数据组合。

特性:去重,没有重复的元素

 1 #交集
 2 print(set_1.intersection(set_2))
 3 print(set_1 & set_2)
 4 >>{'a', 4}
 5 >>{'a', 4}
 6 #并集
 7 print(set_1.union(set_2))
 8 print(set_1 | set_2)
 9 >>{1, 2, 'a', 4, 5, 6, 12}
10 >>{1, 2, 'a', 4, 5, 6, 12}
11 #差集
12 print(set_1.difference(set_2))
13 print(set_1 - set_2)
14 >>{1, 2, 5, 6}
15 >>{1, 2, 5, 6}
16 #对称差集
17 print(set_1.symmetric_difference(set_2))
18 print(set_1 ^ set_2)
19 >>{1, 2, 5, 6, 12}
20 >>{1, 2, 5, 6, 12}
21 
22 
23 #判断是否子集
24 set_3 = set([4,2])
25 print(set_3.issubset(set_1))
26 >>True
27 #判断是否父级
28 print(set_1.issuperset(set_3))
29 >>True
30 
31 #删除一个元素,返回被删除元素
32 set_1 = set([1,2,4,6,'a',4,5,])
33 print(set_1.pop())
34 print(set_1)
35 >>1
36 >>{2, 4, 5, 6, 'a'}
37 
38 #添加一个元素
39 print(set_1)
40 set_1.add('d')
41 print(set_1)
42 >>{1, 2, 4, 5, 6, 'a'}
43 >>{1, 2, 4, 5, 6, 'a', 'd'}
44 
45 #添加多个元素
46 print(set_1)
47 set_1.update('d','g')
48 print(set_1)
49 >>{1, 2, 4, 5, 6, 'a'}
50 >>{1, 2, 4, 5, 6, 'd', 'a', 'g'}
51 
52 #随机删除一个元素,返回删除的元素
53 print(set_1.pop())
54 print(set_1)
55 >>1
56 >>{2, 4, 5, 6, 'a', 'd'}
57 
58 #删除指定元素,无返回值,被删除元素不存在返回None
59 print(set_1.discard('a'))
60 print(set_1)
61 >>None
62 >>{1, 2, 4, 5, 6, 'd'}
63 
64 #删除指定元素,无返回值,被删除元素不存在报错
65 print(set_1.remove(12))
66 print(set_1)
67 
68 #查看长度
69 print(len(set_1))
70 >>6
71 
72 #查看元素是否在集合内
73 print(1 in set_1)
74 print(1 not in set_1)
75 >>True
76 >>False
77 
78 #浅复制
79 set_4 = set_1.copy()
80 print(set_1,set_4)
81 >>{1, 2, 4, 5, 6, 'a'} {1, 2, 4, 5, 6, 'a'}
集合操作
原文地址:https://www.cnblogs.com/yl-2016/p/6775085.html