你还在为python中的列表元组字典发愁嘛,别愣着了,快来看!
Posted KookNut39
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你还在为python中的列表元组字典发愁嘛,别愣着了,快来看!相关的知识,希望对你有一定的参考价值。
大家好,我是KookNut39也是Tommy,在CSDN写文,分享一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。以前一直更新C/C++方面的知识,今天更新一篇最近学习python的文章,以后会持续更新,感兴趣的欢迎关注博主,和博主一起从0学习python知识。大家可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。
之前接触过c++、java唯独就是没接触过python,最近在做一些人工智能的项目,直接开始上手了python,在搞项目的同时发现python中存在一些语法还是需要仔细研究一下的,我学会了自然也不能藏着掖着是吧,所以也写篇文章给大家也读一读!
接触过编程语言的兄弟们对于基础的数据类型想必是已经了然与胸了,所以就挑了些python的特色说一说。准备好了吗,开始了哦!
文章目录
一、列表
对于列表呢,它是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
上面是菜鸟教程的解释,我觉得在这两句话中重要的点如下:
- 使用方括号,元素之间用逗号隔开。对于不同的括号,我觉得python利用的非常到位,几个常用的数据类型括号都不一样,文章最后大家可以总结一下。
- 列表中的数据元素不一定是同种类型。
栗子来了:
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 字典的函数
这里同样和列表、元组一样是最基本的几种函数,日常应用可能相对多一点。
第二张图中的函数是我们用的频率较少的,但是我觉得在使用过程中偶尔也会有奇效出现。
本篇介绍了程序中常见的三种数据类型,分别是列表、元组、字典,介绍的内容相对把我遇到的都介绍了,如果大家有想法也可以私信我大家一起讨论进步,如果文中有什么问题,欢迎大家批评指正。
如果觉得文章不错,麻烦给个点赞+评论+收藏支持一下🤞🤞🤞。欢迎正在学习python的小伙伴们私信我,大家一起探讨一起进步。感谢您的阅读!
老规矩:“早成者未必有成,晚达者未必不达。”
以上是关于你还在为python中的列表元组字典发愁嘛,别愣着了,快来看!的主要内容,如果未能解决你的问题,请参考以下文章
你还在为面试老问你JVM发愁?来看看阿里P7大佬的JVM笔记吧