你还在为python中的列表、元组、字典发愁嘛,别愣着了,快来看!

简介: 你还在为python中的列表、元组、字典发愁嘛,别愣着了,快来看!

一、列表


对于列表呢,它是最常用的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])

image.png

这里要强调的是,列表中的元素对应的索引是从0开始的哦,兄弟们一定要记着,这可千万不能忘了。

还有就是采用冒号(:)的方式访问列表中的元素的时候,可以把他理解成左闭右开的区间,按照这个区间取值,正常情况下list中的值我们基本上都能访问了。


1.2 更新列表

list = []
list.append('Google')
list.append('Runoob')
print(list)

image.png

我们可以使用append函数对列表中的数据进行更新,所以如果我们需要找到一个能够更新方便的数据结构,我觉得列表是挺好的一个选择。


1.3 删除列表元素

list1 = ['physics', 'chemistry', 1997, 2000]
print(list1)
del list1[2]
print("After deleting value at index 2 : ")
print(list1)

image.png

列表中删除元素也是方便的,直接想删除哪个删除哪个,任性就完事了!


1.4 列表中的内置函数

image.png

这里列举了一些基础的函数,能够求解出列表中基础的一些参数,比如长度、最大值最小值之类的简单函数。

image.png

以上是一些相对而言并不那么常用的函数,但是某些地方用到也会出现奇效,小伙伴们可以收藏一下,然后用的时候直接拿来用就妥妥的了。


二、元组


元组其实和列表的差距并不是很大,但是也有其独立的特点,比如元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。举个栗子:

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])

image.png

看吧,这个和列表的访问基本就没区别。


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)

image.png


image.pngimage.pngimage.png

2.3 删除元组

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组

tup = ('Google', 'Runoob', 1997, 2000)
print (tup)
del tup
print ("删除后的元组 tup : ")
print (tup)

image.png


2.4 元组的内置函数

image.png

以上是元组的基本函数,图中也有基本的实例,兄弟们可以收藏下来,以后用到的时候拿来用就好。列表和元组两个结构基础的函数时差不多的,兄弟们照猫画猫就可以了。


三、字典


官方解释字典是一种可变容器模型,且可存储任意类型对象。

其实大家了解了以后就能看出它取名叫字典的原因了,我先剧透一下哦,就是大家想象一下自己用字典是不是在某一页数对应着某一个字,这个数据结构就是这种感觉,是一一对应的。


字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中。

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字。

一个简单的字典实例:

image.png


3.1 访问字典的值

字典和其他两种数据类型的不同在于多了一个键值,这个键值总不能闲置,所以用处就体现出来了。

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])

image.png

我们访问字典中的元素都是通过键值去访问的哦。


3.2 修改字典的值

开头的官方解释中就提到了,字典是一种可变的数据类型,仅仅是它的键是不可变的。

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8             
dict['School'] = "清华大学"  
print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])

image.png

能够看出,对于我们最初的字典,我们通过键的方式对值进行了改变。


3.3 删除字典中元素

删除操作能删单一的元素也能清空字典,清空只需一项操作。

删除单一元素:

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
del dict['Name'] # 删除键 'Name'
print(dict)

image.png

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
dict.clear()     # 清空字典
print(dict)

image.png


3.4 字典的特性

1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'}
print ("dict['Name']: ", dict['Name'])

image.png

2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

dict = {['Name']: 'Runoob', 'Age': 7}
print ("dict['Name']: ", dict['Name'])

image.png


3.5 字典的函数

image.png

这里同样和列表、元组一样是最基本的几种函数,日常应用可能相对多一点。

image.png


第二张图中的函数是我们用的频率较少的,但是我觉得在使用过程中偶尔也会有奇效出现。


本篇介绍了程序中常见的三种数据类型,分别是列表、元组、字典,介绍的内容相对把我遇到的都介绍了,如果大家有想法也可以私信我大家一起讨论进步,如果文中有什么问题,欢迎大家批评指正。


目录
相关文章
|
2天前
|
Python
【Python操作基础】——字典,迭代器和生成器
【Python操作基础】——字典,迭代器和生成器
|
2天前
|
Python
【Python操作基础】——元组
【Python操作基础】——元组
|
2天前
|
Python
【Python操作基础】——列表操作
【Python操作基础】——列表操作
|
2天前
|
索引 Python
Python中的列表、元组和字典各具特色
Python中的列表、元组和字典各具特色:列表是可变的,元组不可变,字典亦可变;列表和元组有序,字典无序(但在Python 3.7+保持插入顺序);元素类型上,列表和元组元素任意,字典需键不可变;列表用方括号[],元组用圆括号(),字典用大括号{}表示。列表不适合作字典键,元组可以。选择数据结构应依据实际需求。
7 2
|
5天前
|
开发者 Python
【Python 基础】递推式构造字典(dictionary comprehension)
【5月更文挑战第8天】【Python 基础】递推式构造字典(dictionary comprehension)
|
6天前
|
BI Python
深入浅出:讲解Python中的列表推导式
深入浅出:讲解Python中的列表推导式
|
6天前
|
监控 PHP Python
1688快速获取整店铺列表 采集接口php Python
在电子商务的浪潮中,1688平台作为中国领先的批发交易平台,为广大商家提供了一个展示和销售商品的广阔舞台;然而,要在众多店铺中脱颖而出,快速获取商品列表并进行有效营销是关键。
|
7天前
|
算法 Python
Python中不使用sort对列表排序的技术
Python中不使用sort对列表排序的技术
17 1
|
7天前
|
Python
【Python 基础】列表(list)和元组(tuple)有什么区别?
【5月更文挑战第6天】【Python 基础】列表(list)和元组(tuple)有什么区别?
|
5月前
|
存储 Python
python字典中删除键值的方法
python字典中删除键值的方法
106 0