零基础学PythonDay5 Python基本数据类型之List
Posted 光于前裕于后
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了零基础学PythonDay5 Python基本数据类型之List相关的知识,希望对你有一定的参考价值。
昨天跟大家一起学习了 Python基本数据类型之Number,没学的兄弟姐妹们看这里【零基础学Python】Day4 Python基本数据类型之String,今天让我们开始学习Python基本数据类型列表List吧。
需注意的是,【零基础学Python】此系列都使用Python3。
Python3 中有6个基本的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
而这6个基本的数据类型又可划分为两类,可变数据类型和不可变数据类型,见下:
- 不可变数据类型:Number(数字)、String(字符串)、Tuple(元组)
- 可变数据类型:List(列表)、Dictionary(字典)、Set(集合)
List
在Python中,List(列表)是使用最频繁的数据类型,它可以存储数字、字符串甚至它自己(嵌套)。列表的定义也非常简单,使用方括号[]括起来就行,里面的元素用逗号分开。
>>> heidou = ['老邓','盖亚','长沙凯子王']
>>> print(heidou)
['老邓', '盖亚', '长沙凯子王']
上面打印的是列表,如果要打印列表中的元素,需使用for循环
>>> heidou = ['老邓','盖亚','长沙凯子王']
>>> for waihao in heidou:
... print(waihao)
...
老邓
盖亚
长沙凯子王
如果要截取列表,和截取字符串一样,使用[头下标:尾下标],索引值也是以0开始,-1倒数第一。
比如现在要取出盖亚
>>> heidou = ['老邓','盖亚','长沙凯子王']
>>> print(heidou[1])
盖亚
注意只写一个索引值是取出对应的元素,’盖亚‘是字符串,而写两个时,是截取的列表,数据类型也是列表。
>>> heidou = ['老邓','盖亚','长沙凯子王']
>>> print(heidou[1])
盖亚
>>> print(type(heidou[1]))
<class 'str'>
>>> print(type(heidou[1:-1]))
<class 'list'>
>>> print(heidou[1:-1])
['盖亚']
还可以写三个,当[]中有三个参数时,那就变成了[头下标:尾下标:步长],所谓步长就是隔几个取。
>>> num = ['1','2','3','4','5','6','7']
>>> print(num[0:7:3])
['1', '4', '7']
上面是步长是3,就是隔三个取一个,当最后的参数为-1时, 就变成了倒着取,字符串也是一样,有一个很常见的面试题就是反转列表/字符串,知道这个之后,5秒就可以解决。
>>> print(num[::-1])
['7', '6', '5', '4', '3', '2', '1']
>>> print(num[-1::-1]) # 开头的-1写不写都行
['7', '6', '5', '4', '3', '2', '1']
>>> a = '12345'
>>> a[::-1]
'54321'
兄弟姐妹们,还记得上面写的可变数据类型和不可变数据类型吗,列表List属于可变数据类型,字符串String是不可变的,区别就在于列表是可变的,见下:
# 这里我可以把列表heidou中的盖亚替换成黑豆,而String一旦定义,无法修改。
>>> heidou = ['老邓','盖亚','长沙凯子王']
>>> print(heidou)
['老邓', '盖亚', '长沙凯子王']
>>> heidou[1] = '黑豆'
>>> print(heidou)
['老邓', '黑豆', '长沙凯子王']
这时候,聪明的兄弟姐妹可能会问了,List作为可变数据类型,是不是也能增删呢?确实可以,上面改查已经讲过了,下面说一下怎么增删。
>>> print(num+num[::-1]) # 如果都是list,使用+即可
['1', '2', '3', '4', '5', '6', '7', '7', '6', '5', '4', '3', '2', '1']
>>> num = ['1','2','3','4','5','6','7']
>>> num.append(8) # 如果要加别的元素,需使用append()方法
>>> print(num)
['1', '2', '3', '4', '5', '6', '7', 8] # 可以看到列表是可以存储不同类型,8是数字类型
>>> num.remove('4') # 直接删指定元素,会删掉第一个匹配到的
>>> print(num)
['1', '2', '3', '5', '6', '7', 8]
>>> del num[2] # 删掉索引为2的元素3
>>> print(num)
['1', '2', '5', '6', '7', 8]
列表还有上述的函数和方法,之后会讲到,兄弟姐妹们学废了吗。
以上是关于零基础学PythonDay5 Python基本数据类型之List的主要内容,如果未能解决你的问题,请参考以下文章
零基础学PythonDay4 Python基本数据类型之String
零基础学PythonDay8 Python基本数据类型之Dictionary
零基础学PythonDay8 Python基本数据类型之Dictionary
零基础学PythonDay7 Python基本数据类型之Set