一、列表
对于列表呢,它是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
上面是菜鸟教程的解释,我觉得在这两句话中重要的点如下:
1.使用方括号,元素之间用逗号隔开。对于不同的括号,我觉得python利用的非常到位,几个常用的数据类型括号都不一样,文章最后大家可以总结一下。
2.列表中的数据元素不一定是同种类型。
栗子来了:
list1 = ['physics', 'chemistry', 1997, 2000]
看吧,一个列表里面出现了字符串、数字多种类型。
1.1 访问列表元素
创建完了就来看看怎么访问呢,其实对于这类数据结构,相比接触过编程的小伙伴们都知道访问的方式,没错,就是通过下标索引来访问其中的值!具体怎么操作呢,来了
list1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5, 6, 7 ] print("list1[0]: ", list1[0]) print("list2[1:5]: ", list2[1:5])
这里要强调的是,列表中的元素对应的索引是从0开始的哦,兄弟们一定要记着,这可千万不能忘了。
还有就是采用冒号(:)的方式访问列表中的元素的时候,可以把他理解成左闭右开的区间,按照这个区间取值,正常情况下list中的值我们基本上都能访问了。
1.2 更新列表
list = [] list.append('Google') list.append('Runoob') print(list)
我们可以使用append函数对列表中的数据进行更新,所以如果我们需要找到一个能够更新方便的数据结构,我觉得列表是挺好的一个选择。
1.3 删除列表元素
list1 = ['physics', 'chemistry', 1997, 2000] print(list1) del list1[2] print("After deleting value at index 2 : ") print(list1)
列表中删除元素也是方便的,直接想删除哪个删除哪个,任性就完事了!
1.4 列表中的内置函数
这里列举了一些基础的函数,能够求解出列表中基础的一些参数,比如长度、最大值最小值之类的简单函数。
以上是一些相对而言并不那么常用的函数,但是某些地方用到也会出现奇效,小伙伴们可以收藏一下,然后用的时候直接拿来用就妥妥的了。
二、元组
元组其实和列表的差距并不是很大,但是也有其独立的特点,比如元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。举个栗子:
tup1 = ('Google', 'Runoob', 1997, 2000) tup2 = (1, 2, 3, 4, 5 ) tup3 = "a", "b", "c", "d" # 不需要括号也可以
从以上的例子就能看出,元组在结构上的差异和列表并没有什么特别多的不同,就是把方括号换成了圆括号,甚至不用带括号(luo奔)都是可以的。
但是这里元组的创建有两个点需要稍稍的那么注意一下子,就是空的元组创建和单一元素的元组创建。
空元组创建:
tup1 = ()
单一元素的元组创建:
tup1 = (50,)
后面的逗号是必须加的哦,否则可能就把这个默认识别成创建一个单一的整型变量了。
2.1 元组元素的访问
tup1 = ('Google', 'Runoob', 1997, 2000) tup2 = (1, 2, 3, 4, 5, 6, 7 ) print ("tup1[0]: ", tup1[0]) print ("tup2[1:5]: ", tup2[1:5])
看吧,这个和列表的访问基本就没区别。
2.2 修改元组
这里就体现出了元组和列表的区别了。
tup1 = (12, 34.56) tup2 = ('abc', 'xyz') tup3 = tup1 + tup2 print (tup3)
这样子对元组元素进行扩展是没有问题的,但是另一种情况就会出现问题:
tup1 = ('Google', 'Runoob', 1997, 2000)
其实,所谓元组的不可变指的是元组所指向的内存中的内容不可变。
但是,列表是可以的,
list = ['Google', 'Runoob', 1997, 2000] #以下的操作是非法的 list[0] = 100 print(list)
2.3 删除元组
元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组
tup = ('Google', 'Runoob', 1997, 2000) print (tup) del tup print ("删除后的元组 tup : ") print (tup)
2.4 元组的内置函数
以上是元组的基本函数,图中也有基本的实例,兄弟们可以收藏下来,以后用到的时候拿来用就好。列表和元组两个结构基础的函数时差不多的,兄弟们照猫画猫就可以了。
三、字典
官方解释字典是一种可变容器模型,且可存储任意类型对象。
其实大家了解了以后就能看出它取名叫字典的原因了,我先剧透一下哦,就是大家想象一下自己用字典是不是在某一页数对应着某一个字,这个数据结构就是这种感觉,是一一对应的。
字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中。
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字。
一个简单的字典实例:
3.1 访问字典的值
字典和其他两种数据类型的不同在于多了一个键值,这个键值总不能闲置,所以用处就体现出来了。
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} print ("dict['Name']: ", dict['Name']) print ("dict['Age']: ", dict['Age'])
我们访问字典中的元素都是通过键值去访问的哦。
3.2 修改字典的值
开头的官方解释中就提到了,字典是一种可变的数据类型,仅仅是它的键是不可变的。
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} dict['Age'] = 8 dict['School'] = "清华大学" print ("dict['Age']: ", dict['Age']) print ("dict['School']: ", dict['School'])
能够看出,对于我们最初的字典,我们通过键的方式对值进行了改变。
3.3 删除字典中元素
删除操作能删单一的元素也能清空字典,清空只需一项操作。
删除单一元素:
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} del dict['Name'] # 删除键 'Name' print(dict)
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} dict.clear() # 清空字典 print(dict)
3.4 字典的特性
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住
dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'} print ("dict['Name']: ", dict['Name'])
2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。
dict = {['Name']: 'Runoob', 'Age': 7} print ("dict['Name']: ", dict['Name'])
3.5 字典的函数
这里同样和列表、元组一样是最基本的几种函数,日常应用可能相对多一点。
第二张图中的函数是我们用的频率较少的,但是我觉得在使用过程中偶尔也会有奇效出现。
本篇介绍了程序中常见的三种数据类型,分别是列表、元组、字典,介绍的内容相对把我遇到的都介绍了,如果大家有想法也可以私信我大家一起讨论进步,如果文中有什么问题,欢迎大家批评指正。