认识Python列表

序列是Python中最基本的数据结构。序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。Python有6个序列的内置类型,但最常见的是列表和元组。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表都可以进行的操作包括索引,切片,加,乘,检查成员。列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。

创建列表

在Python中可以存放多个数据的容器,叫做列表。
列表里可以存储数字、字符串。

格式

列表=[数据,数据,数据]

创建一个列表时,需要在等号右边写下一对中括号,中括号里填入多个数据,每个数据之间用逗号分隔开。
列表中的每一个数据,叫做列表的元素。

举例


k = [12, 'abc', '21']

列表索引

就像书的每一页都有一个页码,列表中的每个元素都有一个编号,在python中,我们可以把列表元素的编号叫做索引。

k=[12, ‘abc’, ’21’] —> 索引 0, 1, 2

索引是从0开始的。
可以直接使用索引,找到列表中的某一个元素。

格式

列表名[索引]

举例


k = [12, 'abc', '21']
w = k[0]
print(w)

输出结果是12
从列表中查找出的元素,两边是没有中括号的。
最大索引 = 元素个数 – 1,超出索引范围程序会报错。

len( )命令

列表元素的个数也叫做列表的长度。 使用len()命令,可以计算出列表的长度。

格式

len(列表)
len(存储着列表的变量)

len()命令会返回一个数字,这个数字就表示列表的长度。

例子


k = len([1, 2, 5])
print(k)

输出结果是3


k = ['m', 'n']
w = len(k)
print(w)

输出结果是2

遍历列表

想逐个取出列表tag中的元素时,可以利用索引。


name = ['xiaowangzi', 'wangzi', 'kevin', 'xwz']
print(name[0])
print(name[1])
print(name[2])
print(name[3])

还可以使用for循环,简化上述中重复的代码:


name = ['xiaowangzi', 'wangzi', 'kevin', 'xwz']
for i in range(4):
    print(name[i])

像这样,把列表中的元素,从头到尾一个一个地取出来的这个过程,叫做遍历列表。

遍历列表的方法

方法1: for i in range(数字):


name = ['xiaowangzi', 'wangzi', 'kevin', 'xwz']
for i in range(4):
    print(name[i])

使用for i in range,把循环变量i作为索引,用name[i]可以逐个取出列表name中的每一个元素。

方法2: for i in 列表名:


name = ['xiaowangzi', 'wangzi', 'kevin', 'xwz']
for i in name:
    print(i)

使用for i in 列表名,循环变量i,会被依次赋值为列表的每一个 元素。

append()命令

使用append()命令,可以在列表中添加元素。

格式

列表名.append(元素)

例子


data = ['A', 'B', 'C']
k = data.append('D')
print(k)

输出结果['A', 'B', 'C', 'D']


w = []
name = ['xiaowangzi', 'wangzi', 'kevin', 'xwz']
k = name[0]
w.append(k)
print(w)

输出结果['xiaowangzi']

remove()命令

使用remove()命令, 可以将某个元素从列表中删除。

格式

列表名.remove(元素)

例子


data = ['A', 'B', 'C']
k = data.remove('C')
print(k)

输出结果['A', 'B']


name = ['xiaowangzi', 'wangzi', 'kevin']
for i in name:
    if i[0] == 'x':
    name.remove(i)
print(name)

输出结果['wangzi', 'kevin']

pop()命令

使用pop()命令,可以删除列表中的元素。

格式

列表名.pop(索引) –> 删除列表中索引位置上的元素
列表名.pop() –> 默认删除列表中最后一个元素

例子


name = ['xiaowangzi', 'wangzi', 'kevin']
name.pop(0)
print(name)

输出结果['wangzi', 'kevin']


name = ['xiaowangzi', 'wangzi', 'kevin']
name.pop()
print(name)

输出结果['xiaowangzi', 'wangzi']
remove和pop命令的区别

insert()命令

使用insert()命令,可以在列表索引位置插入元素。

格式

列表名.insert(索引,需要插入的元素)

例子


name = ['xiaowangzi', 'kevin']
name.insert('wangzi',1)
print(name)

输出结果['xiaowangzi', 'wangzi', 'kevin']
append和insert命令的区别

列表切片

想要获取列表中的某一部分,可以使用列表切片。 列表切片就是根据索引取出列表中的元素,并存储在新的列表中。

保留某索引值后面的所有元素

冒号前面填写索引值,表示切片的起始位置,就保留大于等于该索引的所有列表元素。

列表名[索引值:]


name = ['xiaowangzi', 'wangzi', 'kevin']
k = name[2:]
print(k)

输出结果['kevin']

保留某索引值前面的所有元素

冒号后面填写索引值,表示切片的结束位置,就保留小于该索引的所有列表元素。

列表名[:索引值]


name = ['xiaowangzi', 'wangzi', 'kevin']
w = name[:2]
print(w)

输出结果['xiaowangzi', 'wangzi']

保留两个索引值之间的所有元素

冒号前后分别填入起始索引值和结束索引值。起始索引值对应的元素会被保留。结束索引值对应的元素,不会被保留。

列表名[起始索引值:结束索引值]


name = ['xiaowangzi', 'wangzi', 'kevin', 'who']
w = name[1:3]
print(w)

输出结果['wangzi', 'kevin']

split()命令

使用split()命令,可以在指定位置分割字符串。

格式

字符串.split(‘分隔符号’)

分隔空格

当字符串要按空格分割的时候,括号中不需要填写任何东西, 也可以实现同样的效果。


a = 'H E L L O'
n = a.split()
print(n)

输出结果['H', 'E', 'L', 'L', 'O']

分割其他字符

在括号中填写需要分割的符号,程序就会在符号位置进行切割,把字符串拆分成许多短的字符串,并把这些字符串存放到一个列表中。


a = 'H*E/LL*O'
n = a.split('*')
print(n)

输出结果['H', 'E/LL', 'O']


a = 'H*E/LL*O'
n = a.split('/')
print(n)

输出结果['H*E', 'LL*O']

count()命令

使用count()命令,可以统计出列表中某个元素的数量。 单词 count 是计数的意思。

格式

列表名.count(元素) –>计算该列表中元素的个数

例子


color = ['red', 'red', 'yellow', 'red']
n = color.count('red')
print(n)

输出结果3.

sum()命令

使用sum()命令,可以计算列表中所有数字的和。 单词 sum 是和的意思。

格式

变量名 = sum(列表名)

只有当列表内存储的每个元素都是数字时,才可以使用sum()命令计算总和。如果列表内存储了其它类型的数据,程序在运行 时就会报错。

例子


n = [19, 2, 33, 24]
s = sum(n)
print(s)

输出结果78.

求最大值和最小值

max()命令

使用max()命令,可以来找出列表中的最大值。

变量 = max(列表名)

在max()命令的括号内填入列表名,程序运行后,max()命令就会返回列表中的最大值。

min()命令

使用min()命令,可以来找出列表中的最小值。

变量 = min(列表名)

在min()命令的括号内填入列表名,程序运行后,min()命令就会返回列表中的最小值。

至此暑假的课程终于上完并把笔记更新完了!对于9月初的等级考试不知现在刚学到的知识能否顺利通过??

姜辰, 老麦, 拾风等人对本文发表了6条热情洋溢的评论。
  1. 姜辰说道: 0 来自天朝的朋友 Firefox Windows 10

    😅感觉python很有意思,但是入门好枯燥

    1. 老王说道: 来自天朝的朋友 Safari Mac OS X Lion 10_15_7

      所以说学东西兴趣很重要,感兴趣学起来就不会那样了。。。😂

  2. 姜辰说道: 0 来自天朝的朋友 Firefox Windows 10

    python感觉挺有意思的,但是不知道为啥没心思入门。233

  3. 拾风说道: 1 来自天朝的朋友 Chrome Windows 10

    Python现在好多,有未来成为主流编程语言的趋势吗?

    1. 老王说道: 来自天朝的朋友 Safari Mac OS X Lion 10_15_7

      会成为主流,但能达到啥高度就不好说了,现在的网络瞬息万变。。。

      1. 老麦说道: 1 来自天朝的朋友 Chrome Windows 10

        python门槛感觉很高。😅
        而且很多大佬都不建议将python列为主修第一语言,当然不知道是不是真的。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注