Python中的列表、元组、字典

news/2023/6/7 23:23:19

​​​​​​​列表是一种让程序员在代码中批量表示/保存数据的方式,元组和列表相比,是非常相似的,只是列表中放哪些元素可以修改调整,元组中放的元素是创建元组的时候就设定好的,不能修改调整。

列表和元组类似于其他编程语言中的“数组”

列表 

创建列表 

a)创建列表主要有两种方式:

方式一:alist = []
方式二:alist = list()

[]表示一个空的列表、list()是Python中的内建函数 

b)可以直接在[]里面放列表的初始值,可以直接使用print来打印list中的元素内容:

alist = [1,2,3,4]
print(alist)

c)列表中存放的元素允许是不同的类型:

alist = [1,'hello',True]
print(alist)

访问列表下标 

a)可以通过下标访问操作符[]来获取到列表中的任意元素

alist = [1,2,3,4]
print(alist[2])

注意:下标是从0开始计数的,因此下标为2,则对应着3这个元素

b)通过下标不光能读取元素内容,还能修改元素的值;如果下标超出列表的有效范围,会抛出异常

c)下标可以取负数,表示“倒数第几个元素”:

alist = [1,2,3,4]
print(alist[-1])

alist[-1]相当于alist[len(alist) - 1] 

切片操作 

通过下标操作是一次取出里面的一个元素,通过切片,则是一次取出一组连续的元素,相当于得到一个子列表

a)使用[ : ]的方式进行切片操作

alist = [1,2,3,4]
print(alist[1:3])

alist[1:3]中的1:3表示的是[1,3)这样的由下表构成的前闭后开区间

b)切片操作中可以省略前后边界:

alist = [1,2,3,4]
print(alist[1:])            #省略后边界,表示获取到列表末尾
print(alist[:-1])           #省略前边界,表示从列表开头获取
print(alist[:])             #省略两个边界,表示获取到整个列表

c)切片操作还可以指定“步长”,也就是“每访问一个元后,下标自增几步”:

alist = [1,2,3,4,5,6,7,8,9,10]
print(alist[::1])
print(alist[::2])
print(alist[::3])
print(alist[::5])

d)如果切片中填写的数字越界了,不会有负面效果,只会尽可能的接收把满足条件的元素 

alist = [1,2,3,4]
print(alist[1:10])

列表的增删改查 

a)遍历列表元素

#方式一:使用for循环
alist = [1,2,3,4]
for elem in alist:print(elem)#方式二:使用for按照范围生成下表,按下表访问
alist = [1,2,3,4]
for i in range(0,len(alist)):print(alist[i])#方式三:使用while循环,手动控制下标的变化
alist = [1,2,3,4]
i = 0
while i < len(alist):print(alist[i])i += 1

b)新增元素

a)使用append方法,向列表末尾插入一个元素(尾插)
alist = [1,2,3,4]
alist.append('hello')
print(alist)b)使用insert方法,向任意位置插入一个元素
alist = [1,2,3,4]
alist.insert(1,'hello')
print(alist)

 

c)查找元素

#使用in操作符,判定元素是否在列表中存在,返回值是布尔类型
alist = [1,2,3,4]
print(2 in alist)
print(10 in alist)#使用index方法,查找元素在列表中的下标,返回值是一个整数,如果元素不存在,则会抛出异常
alist = [1,2,3,4]
print(alist.index(2))
print(alist.index(10))

 

d)删除元素

#使用pop方法删除最末尾元素
alist = [1,2,3,4]
alist.pop()
print(alist)#使用pop按照下标来删除元素
alist = [1,2,3,4]
alist.pop(2)
print(alist)#使用remove方法,按照值删除元素
alist = [1,2,3,4]
alist.remove(2)
print(alist)

 

d)修改元素

alist = [1,2,3,4]
alist[2] = 'hello'
print(alist)

 

e)连接列表

#使用+能够把两个列表拼接在一起,“+”的结果会生成一个新的列表,而不会影响到就得列表类容
alist = [1,2,3,4]
blist = [5,6,7]
print(alist + blist)#使用extends方法,相当于把一个列表拼接到另一个列表的后面;a.extends(b),是把b中的类容拼接到a的末尾,不会修改b,但是会修改a
alist = [1,2,3,4]
blist = [5,6,7]
alist.extend(blist)
print(alist)
print(blist)

 

 

元组 

 元组的功能和列表相比,基本是一致的,元组使用()来表示:

atuple = ()
atuple = atuple()

元组相对于列表的优势:

a)元组里面的元素不可改变,当调用函数不确定列表里面的值是否会被改变的时候,使用元组比使用列表要安全;

b)在使用字典情况下,元组因为里面的元素具有不可变性质可以拿来作为字典的键; 

元组的使用:

可以使用读操作,比如访问下标、切片、遍历、in、index、+等 ;

不能使用写操作,比如修改元素、新增元素、删除元素、extends等;

 

 

 

 

 

 

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4556360.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

不要问我那儿有什么好吃的,它可以给你答案

每次出去旅游回来&#xff0c;总会有人问我&#xff0c;那儿有什么特色小吃啊&#xff0c;那儿有什么好吃的菜啊&#xff0c;随口一问还好&#xff0c;都无所谓。有的人可能下次自己去那儿旅游的时候根据我吃过的找美食以及店&#xff0c;回来就会抱怨&#xff0c;哪家哪家的菜…

为什么要使用Elasticsearch

小刘最近在做搜索相关的事&#xff0c;但一直很苦恼。他之前在用数据库&#xff0c;如MySQL&#xff0c;来做搜索的业务&#xff0c;如知识库管理、问答和文档搜索等。在这过程中&#xff0c;他发现数据库并不能很好的满足他的需求。 我们来一起看看他遇到的问题吧~~~ &#…

聊聊机器如何理解人类的语言

人类语言复杂性 自然语言对于人类发展进程是至关重要的,可以说如果没有自然语言就不会有人类的文明,它也是人类独有的能力。想象一下,如果没有自然语言我们该如何进行思想交流,该如何进行人与人之间的协作?。 人类的自然语言发展到如今已经是高度成熟了,同时这也是一个…

数据分析师刚入职第一月需要注意什么?

随着国内疫情的逐步稳定&#xff0c;以及“金三银四”的到来&#xff0c;当前招聘市场又开始活跃起来。据我所知&#xff0c;最近国内的一些互联网大厂都已开启校园招聘&#xff08;校招/实习&#xff09;&#xff1b;而社招市场也逐步恢复&#xff0c;陆续有不少小伙伴得到了满…

wps分享为什么要登入_人为什么要努力?一直舒服不好吗?分享我2007年的故事...

2007年的时候&#xff0c;我来到成都&#xff0c;来到四川大学上学。在成都这个悠闲的城市呆了好几年,那个时候给我印象比较深刻的是&#xff0c;只要太阳一出来。不管是学校里面,还是外面的茶馆&#xff0c;就马上会被这一个潮水一样的人群所占领。在太阳下面喝茶&#xff0c;…

小程序开发用什么编程语言_小程序开发适合什么类型的企业?

文&#xff5c;1300字需要3分钟阅读来源&#xff5c;旭晶创投编辑&#xff5c;旭晶君01经历了一段时间的试水&#xff0c;小程序开发市场已经日渐成熟。但很多商家面对小程序还是犹豫不决&#xff0c;不知道自己的商品/服务是不是适合做微信小程序开发。而小编接下来就给大家介…

OSChina 周四乱弹 ——跌倒,就在那附近找找好吃的。

2019独角兽企业重金招聘Python工程师标准>>> 大菲 : 我上辈子一定是一位摇滚歌手&#xff0c;梦回唐朝至今依旧最爱。&#xff08;认真脸&#xff09; 梦回唐朝-唐朝 手机党少年们想听歌&#xff0c;请使劲儿戳&#xff08;这里&#xff09; 看了一个特别有趣的评论…

建立基于IP地址访问的网站

建立基于IP地址访问的网站 要求&#xff1a; 1、该网站ip地址的主机位为100&#xff0c;设置DocumentRoot为/www/ip/100&#xff0c;网页内容为&#xff1a;this is 100。 2、该网站ip地址主机位为200&#xff0c;设置DocumentRoot为/www/ip/200&#xff0c;网页内容为&#x…