您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 赣州分类信息网,免费分类信息发布

Python中几种常见的列表操作

2024/2/9 10:34:08发布17次查看
python是一门非常简洁的语言,和c/c++,java等有着较大的差别。到list和tuple这儿有点犯迷糊了,就从这儿开始写起。目前做接触到的列表有4个,dicth和set,这篇文章就来看看这几种列表的特性和用法。
python“数组”list
list是python内置的一种数据类型列表。在我看来有点类似于数组,但是深究下来却有很多不同。
题外话:python和以往学过的编程语言最大的不同在于变量不用声明类型,也就是可以实现如下操作:
a = 3
print(a)
a = ‘s’
print(a)
这样的操作在大多数在以前学过的三种语言种都是不合法的,但是在python种是合法的,python种的变量和c语言种的void类型指针有点类似(粗浅理解)。小编为大家推荐一个学习交流群:308754087,群里有人都快满了~大家遇到啥问题都可以在里面交流!是一个非常好的学习交流地方~欲进从速欧~各种pdf等你来下载,全部免费,只为帮助大家快速入门
回归正题,既然python中没有声明类型这一概念,那么list自然也是不用声明类型的,c/c++/java中的数组都只能存储一种数据类型的数据,在python种可以存储多种,list里面也可以存放另一个list例如,下面的语句是合法的:
a = [1,’b’,2,’c’ , [1,2,3]]
list中数据的访问
数组的下标是从开始的,同样list的索引也是从0开始的,例如,a[0]的返回值是1,a[1]的返回值是’b’;最后一个元素是len(a)-1,其中len()的返回值是a的长度。因此可以用a[-1]去最后一个元素,即c,同样a[-2]的返回值是2
list的操作函数
长度:len();传入参数为list名,返回值为list的长度。
删除:删除末尾元素list.pop(),删除指定位置元素list.pop(i),i是从0开始的索引。
插入:将元素插入到指定位置,list.insert(i)。
追加:末尾增加一个元素x,list.append(x)。
不可变“数组”tumple
tumple和list类似,但是tumple一经初始化就不能再修改,可以用如下语法定义:
t = (1 , 2 , 3)
定义只有一个元素的tumple时为了消除歧义,可以采用如下语法:
t = (1 ,)
可变tumple:
tumple是不可变的但是list是可变的,因此在tumple中嵌入一个list。这个tumple就是可变的,当然可变的仅仅是list那一部分。
可以这样初始化:
t = (1 , 2 ,[1 , 2])
list的操作函数在这里也同样生效:
list中的部分操作函数如len()也可在tumple中使用,但是增添修改之类的函数肯定是不可以的了。
python内置字典dict
dict是dictionary的缩写,顾名思义是字典的意思。dict是python种的字典,使用key-value的形式存储,查找速度极快。基本定义语法如下:
d = {‘mike’:95 , ‘bob’:85 , ‘tracy’ : 75}
查找时可以通过key来查找,例如:
d[mike]
查找的就是value的值95。数据放入也使用key的方法:
d[‘linda’] = 78
一个key只能对应一个一个value,如果多次放入,前面放入的值会被冲掉。
dict的操作函数
判断:判断一个key是否在dict中,查找时如果查找的key不在dict中,解释器会报错,为了防止程序报错而导致意外终止,在查找之前可以判断key是否在dict中。两种方法:
方法一:
>>>‘thomas’ in d
false
方法二:
使用get方法,如果不存在,默认返回none,也可以自定义返回结果,用法:
>>>d.get(thomas)
>>>d.get(thomas , -1)
-1
删除:
要删除某一个key,可以使用pop(key)方法。
key值为不可变对象
因为key是不可变对象,所以list不能作为key使用,但是tumple可以作为key来使用:
没有value的dict :set
set和key类似,但是set中不存储value,set中没有重复的key(经过实验dict中也没有重复的key,如果初始化时出现重复的key,前面的key和value会被后面的覆盖)。创建一个set需要提供一个list作为输入集合:
s = set([1,2,3])
如果传入重复的key值,set会自动清除重复元素:
>>>s = set([1,2,1,2,3])
>>>s
{1,2,3}
set的操作函数
增加:add(key),可以增加重复的元素,但是不会有效果。
删除:remove(key)。
如下图:
set的集合运算
set可以看作是数学上无序无重复的集合,因此可以做交、并等运算:
不可变对象操作
对于可变对象如list,可以用函数操作,操作后list内部结构会改变。
用函数操作不可变对象时,对象内部结构不会改变:
但是为什么执行函数之后,输出的结果有变化?以下实验可以解释这个问题
可以简单的理解为:解释器新开辟一个空间,并且将原对象中的内容复制到新开辟空间且为可变,函数操作之后输出的为新开辟的空间的值。
赣州分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录