python之元组,列表和字典的区别

Python语言包含6种内建的序列,其中,有两种主要的类型:列表和元组。

列表是可以修改的,而元组不可以,如果要添加或者删除某些元素,就只能用列表,为了限制某些元素,就会用到元组。一般来说,列表可以替代元组。在列表之中,有索引,分片,加,乘等等。

一、list(列表) 用方括号[]
列表是Python的一种内置数据类型,list是一种有序的集合,可以随时添加和删除其中的元素。
获取list中的元素用角标获取,角标可以使用正角标,也可以使用负角标,越界时抛出IndexErro
list中的元素的数据类型也可以不一样(就像Java一样),也可以在list内放另外一个list,这样也就形成了一个多维集合

常用的方法有:

1.len()获取列表的长度

2.X.append(“你好”)  向列表中添加元素

3.X.pop()弹出末尾元素

1 zoo = ['pig','tiger','dog']
2 print(len(zoo))
3 zoo.append("nihao")
4 print(zoo)
5 print(zoo.pop())
6 print(zoo[0])
7 print(zoo[-1])

单列表操作

 1 # 元组操作
 2 
 3 x = [5, 6, 2, 1, 6, 7, 2, 7, 9]
 4 
 5 # append()方法,就是在列表尾部添加元素
 6 x.append(2)
 7 print(x)
 8 
 9 # insert(开始位置,插入的值),插入一个元素到指定位置
10 x.insert(2, 99)  # 2是索引,表示这个元素要放什么位置,99是插入的元
11 print(x)
12 
13 # 删除元素 remove()
14 x.remove(2)  # 这个2是指一个元素不是索引,如果多个,默认移除第一个
15 print(x)
16 
17 x.remove(x[2])  # 根据索引,直接移除索引对应的元素
18 print(x)
19 
20 # pop(),移除列表尾部最后一个元素
21 x.pop()
22 print(x)
23 
24 # 列表引用
25 print(x[0:5])  # 相当于一个范围,从左边索引到右边索引,但是不包括右边索引
26 
27 # -1 索引代表最后一个元素,-2代表倒数第二个
28 # 此时x= [5, 6, 1, 6, 7, 2, 7, 9]
29 print(x[-1])
30 print(x[-2])
31 
32 # 查找某一个元素的索引值,一下1的索引应该是2
33 print(x.index(1))
34 
35 # 计算某一个元素出现的次数
36 print(x.count(6))  # 元素6出现了2次
37 
38 # 排序,默认从小到大
39 x.sort()
40 print(x)
41 
42 # 字母排序
43 y = ['Janet', 'Jessy', 'Anthony', 'Tom', 'Alice', 'Bob']
44 y.sort()
45 print(y) # 注此处的y为重新排序的y,,y.sort()没有对应的返回值

多列表

 1 # 多维列表
 2 
 3 x = [[5, 6], [6, 7], [7, 2], [2, 5], [4, 9]]
 4 
 5 
 6 # 根据索引引用列表元素,例如打印【6,7】
 7 # print(x[1])
 8 # 打印【6,7】中的7
 9 print(x[1][1])
10 
11 
12 
13 
14 
15 # 三维
16 y = [[[5, 7], [6, 6]], [[6, 6], [7, 8]], [7, 2], [2, 5]]
17 # 打印[[6,6],[7,8]]这个部分中的[6,6]里的第一个6
18 print(y[1][0][0])
19 # y看起来有的晕,我们换一个写法
20 
21 y = [
22     [[5, 7], [6, 6]],
23     [[6, 6], [7, 8]],
24     [7, 2],
25     [2, 5]
26 ]
27 # 这样稍微清晰,一点,Y有4个元素,前面两个是两两二维组成,后面两个是单独的二维

二、tuple(元组) 用小括号()

元祖也是一种有序列表,和list非常类似,不同点是tuple一旦定义了就不可修改,在一定意义上这也提高了代码的安全性,查询方法和list一样,使用的时候能用tuple的就用tuple。
在定义只有一个元素的元祖时加入"逗号"以免产生和数学运算的歧义

可变的tuple
当元祖内部放一个列表的时候,这个元祖中的列表的值就可以变化了,实际上tuple并没有改变,变的是内部list的值

1 country = ('bj',['sh','gd'])
2 print(country[1])
3 print(country[1][0])
4 country[1][0] ="nihao"
5 print(country[1][0])

三、字典

Dictionary (字典) : 用{}来定义
Dict={'name':'Pei', 'age':'26'}

 1 # 字典  
 2   
 3 # 我们随便设计几个城市的明天的最高温度  
 4 tem ={'北京':22,'上海':23,'深圳':24,'广州':25,'南京':26}  
 5   
 6 print(tem)  
 7   
 8 # 打印广州最高温度  
 9 print(tem['广州'])  
10   
11 # 字典中添加一个元素  
12 tem['重庆'] = 28  
13 print(tem)  
14   
15 # 删除上海  
16 del tem['上海']  
17 print(tem)  
18   
19 # 更新某一个值  
20 tem['北京'] = 28  
21 print(tem) 
# 字典

# 字典里嵌套列表
tem = {'北京': [22, '多云'], '上海': [23, '晴天'], '深圳': [23, '小雨'], '广州': [23, '阴天']}

print(tem)

# 打印北京天气整体情况  
print(tem['北京'])

# 打印北京最高温度
print(tem['北京'][0])
原文地址:https://www.cnblogs.com/fengyiru6369/p/8034963.html