前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python之list、tuple

Python之list、tuple

作者头像
AsiaYe
发布2019-11-06 15:17:21
4870
发布2019-11-06 15:17:21
举报
文章被收录于专栏:DBA随笔DBA随笔

Python之list、tuple

前段时间看了看Python,最近在工作中频繁使用,发现自己对Python的掌握还是不够,于是决定,好好整理一阵子关于Python的东西,如果工作当天有更好的分享内容,就暂时分享工作内容,没有的话,就把Python好好过一遍。

Python中有很多内置的类型,今天主要分享list、tuple、dict、以及set这四种

1

list

list是Python内置的一种数据类型,它是一种有序的集合,也叫列表,可以随时添加和删除其中的元素、简单看下list的存储方式:

我们可以通过不同的下标去访问它里面每一个元素的值,当下标越界的时候,系统会给出相应的提示。

如果我们要取最后一个元素,可以直接使用-1下标,直接获取最后 一个元素,如下:

以此类推,还可以去倒数的第二个(下标为-2)、倒数第三个(下标为-3)。

添加

list 是一个可变的有序表,所以,可以往list中追加元素,使用的是append方法:

插入

可以把新的元素插入到list的任意一个位置中,使用insert方法配合下标完成:

删除

删除末尾元素使用pop的方法

需要删除指定位置的参数,只需要在pop()的括号中,填入指定的下标即可。

替换

要想替换list中的某一个元素,直接使用下标,将特定位置的元素进行替换即可:

长度

使用list时候,经常需要判断list的长度,这时候,我们可以采用len进行长度计算:

数据类型

元素数据类型可以不同,例如一个list中,同时包含字符型,整形和bool型,如下:

同样,list的元素也可以是list,例如:

此时我们计算这个list的长度,可以发现:

它的长度是3,这说明list的长度只和它保存的数据个数有关,而与数据类型无关。

在这种list中包含有list的情况下,我们需要访问‘banana’,需要使用LinL[1][0]:

2

tuple

tuple是另外一种有序的列表,叫做元组,tuple和list很相似。它访问元素的方法和list一致,我们可以通过-1访问它的最后一个元素。

tuple与list的区别

第一、tuple一旦初始化我们就不能重新修改它,list当中有insert,append这样的方法,tuple中将不能使用这些方法。

第二、tuple定义的时候需要使用圆括号,而不是list的方括号。

当我们试图改变t[1]当中的内容的时候,会看到错误提示,如下:

值得注意的一点是,当我们定义一个只有一个元素的时候,不能像list一样直接写L=[1],如果写成t=(1),这个时候,python会把它外面的圆括号当做数学中的括号进行解析,导致输入的数字变为t=1,也就是我们定义了一个变量t,它的值是1,如下:

那么这种情况应该怎么处理呢,正确的处理办法是写成下面这样:

主动添加一个逗号,会避免语法上的误解。

数据类型

当一个tuple中包含一个list的时候,这个list当中的值可以发生变化,如下:

这里,可能有些同学会有疑问,为什么tuple本身是不能发生变化的,而tuple中的list却可以发生变化?其原因可以用下面的图解释:

当我们把list中的值进行修改的时候,实际上我们改变的是tuple[2]所指向的那块内存里面的值,tuple当中的内存指向并没有发生变化,结果如图,tuple始终指向一个固定内存位置的list:

简单总结一下,虽然list和tuple比较简单,但是在实际使用的过程中,往往胡忽略一些细节,这里写出来,也算是巩固一下吧。通过此篇,需要记住一点,tuple不可变,list可变,这便足以。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-11-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DBA随笔 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档