Python数据类型之列表、元组、字典、字符串
最近学习了Python的基本数据类型,在这里随笔记录一下,也希望看到的同学能够有所启示:
1、列表(list)和列表操作
列表也就是list,在Python中没有了数组的概念,以列表取代了数组,很明显,列表的理解要比数组简单很多,但是却和数组有很多相似之处,下面我将逐一阐述,列表也叫数组,列表定义,使用[]即可;列表里面可以再套列表,一个里面套一个列表,叫二维数组;一个里面套一个列表,里面的列表再套一个列表,这个叫三维数组,套几层就是几维,定义格式如下:

上图的格式为列表,也称之为一维列表,用中括号括起来,以逗号隔开,这种格式即是普通的列表,如果列表中的元素是字符串,要使用引号括起来,如果是数字,则不用使用引号
什么是而为列表和三位列表呢,其实就是列表中嵌套列表,有几层就是几维列表,如图:

上图就是一个典型的三维列表,其实就是列表中还有列表,嵌套做成的一个列表而已
列表的 增 删 改 查
增:就是想列表中写入新的元素,在原来的元素不变情况下,增加新的元素进来,再说之前首先需要说明一下列表的下标,列表的各个元素都是由下标的,想去哪个元素,可以根据下表进行取值,列表的下标从0开始,也就是说,列表的第一个元素的下标是0,以此类推,直到最后一个元素;
我们那上边的例子进行讲解列表的增删改查
增
1).append方法,这个方法较为常用,示例如下:

这样,就在原来的列表的最后增加了‘lilei’这个元素,默认是在原来列表的末尾增加新的元素;结果如下

除了在原有列表的末尾增加新的元素外,还可以指定位置添加,那就要用的另外一种方式进行添加了,如图:

2) .insert方法就是可以指定列表位置增加新元素,其结果是lilei这个新的元素变成了下标为1的元素:

那么指定的下标还可以为负数,附属代表从后向前倒数的下标,如


以上便是列表增加元素常用的方法,请牢记,以后会经常被用到;
改:
改就是修改列表中的元素,将原来的元素进行修改变成新的元素,只有一种方法,就是通过下表进行修改,如图


可以看到,原来下表为1,的Jone,别修改成了新的lilei,这就是修改列表,指定下标记可修改
删:
即是删除,有以下方法
1)del 方法,就是直接删除指定下标的列表元素,如图:


可以看到类表中的sony被直接删除了
2).pop方法,这种方法默认删除列表中最后一个元素,如果传入了下标,就会删除指定下标的元素,如图:


不指定下标使用这种方法,其结果就是删除最后一个元素


指定下标后,删除的就是指定的位置,如上图
3).remove()删除列表中指定的元素,按名称删除,如图


指定了具体的名称,就会删除列表中的那个元素
4).clear方法,清空列表,如图:


很明显,列表被清空了
查:
非常简单,就是根据下标查询列表的元素,如图:


这样就将列表中指定的元素查出来了
5)其他的列表操作
.count()方法,统计列表中指定元素出现的次数,如图:


这样就可以统计出指定元素在列表中出现的次数
.index()方法,查询指定元素的下标,如图:


.sort()方法,给列表中的元素进行排序,按从小到大排序,如图:


这个方法将原来列表的数字进行了从小到大的排序,那么从大到小该如何排序呢,这就用到了与另一种方法的结合使用
.reverse方法,这个方法就是反转的意思,也就是将原来列表的元素进行反转,原来在一个的元素变成了最后一个,如图


结果就是以上图片显示,将列表从大到小进行排序的方法就是将这两种方法进行结合使用,如图:


看,是不是已经将原来的列表进行了从大到小的排序,reverse是反转的意思,sort是从小到大排序,那么结合起来用就是以上的写法,先对列表进行从小到大的排序,然后再进行反转,就变成了从大到小的排序了,看看是不是很简单
最后一种方法.extend方法,这个方式是将两个列表合并成一个列表,如图:


将username列表合并到了num列表中,将两个列表变成了一个列表,那这时,username这个列表是不是发生了变化呢?答案是否定的,程序只是将username这个列表合并到了num的列表中,并没有改变username列表,所以user列表没有变化,可以检查一下


还是两个列表,只是num列表发生了变化,username并没有变化;
2、元组(tuple)类型
其实元组跟列表基本相同,使用的方法也一样的,唯一的区别就是,元组中的元素不可修改,类表中的元素是可以修改的,而且元组的格式与列表也有一些小差异

这种使用小括号括起来,每个元素都用逗号隔开的数据类型就是元组,元祖是不可以修改的,也就是说元组中的每个元素只要定义了就不能进行修改,如果要修改就要重新定义一个新的元组;
3、字典(Dictionary)类型与字典(Dictionary)的操作
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

字典中的每个元素都是一个键值对,即一个key一个value;
下面来介绍一下字典的 增 删改查
查
就是查看字典中的元素,其实字典的查询与列表的查询差不多,字典是通过key值来查询value的,如图:

也可以使用get方法来进行取值

但是如果在字典中取货get不存在的值,系统会报错的,所以字典取值必须有值得存在方可;
增
在字典中增加新的元素,可以直接将key和value进行增加,如:

这是一种指定名称增加的方法,通常默认情况下都是在字典的末尾增加,
.setdefaul方法也可以增加新的元素,如图:

改
更改字典中的元素,其实与增加的方法一样,如果字典中有指定的元素,就进行修改,如果没有就会增加一个新的元素,如图:

删除
即删除字典中的元素,有以下几种方法:
.pop,指定key删除,如图

.popitem方法,随机删除字典中的一个元素,如图:

del方法,指定key删除,如图:

.clear()方法,清空字典,如图:

其他的一下操作字典的方法
获取字典中所有的key的方法,如图:

获取字典中所有的value,如图

将字典的key和value转化成一个二维数组,如图:

以上就是针对字典的一些操作,都是经常用得到的方法,请牢记
切片
切片说白了就是取值的一种方式主要针对list的取值,如图:

我们通过图片可以看出,切片就是根据list的下标进行取值的,而且是取头不取尾,如果第一个下标不写的话,默认从下标为0的元素开始取值,
如果后面的下标没有写,默认取到最后一个下标的元素为止,如图:

还有另一种写法,就是增加一个不长,就是第三个值,如图:

通常加入步长的方法都是再取list的全部奇数或偶数,这种方法比较常见,尤其是在循环中比较常用
字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串,创建字符串很简单,只要为变量分配一个值即可。例如:

程序中‘hello world!’就是一个字符串,就是这么简单,在生活中不可能所有的事物都可以用数字代替,那么出了数字以外的另一种简单便捷的数据类型就是字符串,字符串的内置方法有很多,在这里我就不一一阐述了,我只对在我们编程是最为常用的方法进行描述,
.capitalize()方法,是对字符串首字母进行大写的操作,如图:

.endwith()方法,判断是否已什么结尾,如图

.format()方法,这个方法比较常用是格式化字符串的一种,比%s等更好用,使用.format方法不用考虑字段的位置问题,如图:


这个字符串格式化的方法会经常被使用,所以需要牢记;
.isalpna()方法,判断是否是英文字母,返回的只有Trun和false

.isdigit()方法,判断是否是数字,回的只有Trun和false

''.join方法,拼接字符串,常用与数据类型转换时字符串的拼接,这个方法非常常用,在后面的学习中会经常被用到,尤其是在字典、列表转换字符串是的时候会经常被用到,所以需要牢记

.lower方法,将字符串英文转换成小写字母

.upper()方法,将字符串英文变成大写字母,如图:

.strip方法,默认去掉字符串两边的空格和换行符‘\n’,这个方法也是很常用的一个

.replace()方法,替换字符串后面还可以写上替换的次数
print('mysql is db.'.replace('mysql','oracle',1))这个方法的格式就是这个样子,具体我还没有用过,后面学习后再详细讲解
.split()方法,分割字符串返回一个list

.splitlines()方法,按换行符进行分割

关于字符串的内置方法操作,比较常用的就是以上所描述的,还有很多,我这边没有描述,是因为都不是很常用,我们在用的时候只要稍加查询就可以轻松掌握,我们需要记住的是这些比较常用的方法,希望我的这个文档能够对您有所帮助
浙公网安备 33010602011771号