最新消息:欢迎光临 魔力 • Python!大家可以点开导航菜单中的【学习目录】,这个目录类似图书目录,更加方便学习!

Python3萌新入门笔记(8)

Python教程 小楼一夜听春语 9660浏览 0评论

这一篇教程,我们来了解Python中的第二种数据结构–列表(list)。

列表和元组很相像。

下面是对列表的创建操作,大家可以看到,形式上列表和元组的区别只在于列表两侧是一对方括号。

lst1 = []
lst2 = [1]
lst3 = [1,2,3,4,5,6,7,8,9]

print (lst1,lst2,lst3)

运行代码之后,显示的结果为:

接下来,我来给大家介绍对列表的操作。

因为列表的元素是可变的,所以操作上比元组更丰富。

首先,大家会发现刚才我们对元组的操作,对列表同样有效。

大家可以尝试运行下方这段代码:

lst1 = [1,2,3,4,5,6,7,8,9] # 创建列表
lst2 = ['a','b','c']
lst3 = ['你','我','你','他','我','我']

print (len(lst1)) # 获取列表的元素数量
print (lst1+lst2) # 连接多个列表为一个新列表
print (lst2*3) # 重复列表元素为一个新列表
print (lst1[0]) # 获取列表指定位置的元素,索引位置从左至右由0开始
print (lst1[-1]) # 获取列表指定位置的元素,索引位置从右至左由-1开始
print (lst1[2:8:2]) # 获取列表中指定片段的元素,并可以设置间隔获取
print (max(lst1)) # 数组中元素均为数字类型时,获取列表中数值最大的元素
print (min(lst1)) # 数组中元素均为数字类型时,获取列表中数值最小的元素
print ('a' in lst1) # 判断列表中是否包含某个元素,如果包含,返回值为True,否则为False
print (lst1.index(3)) # 查询元组中是否包含某个元素,如果包含,返回值为索引位置,否则抛出异常
print (lst3.count('我')) # 获取元组中某个元素的出现次数

运行代码之后,显示的结果为:

除了和元组相同的操作之外,列表还有其他的操作,例如添加、插入、取出、删除以及修改列表所包含的元素。

1、添加元素

添加单个元素:使用append(object)函数可以为列表添加单个元素,参数object为对象;也就是说所有Python的对象都可以添加到列表中。

添加多个元素(合并列表):使用extend(iterable)函数可以为列表添加多个元素,参数iterable为可迭代对象。

以下代码演示了向列表中添加元素的操作:

lst1 = [1,2,3,4,5,6,7,8,9] # 创建列表
lst2 = ['a','b','c'] # 创建列表
lst1.append(10) # 添加单个元素到列表
lst2.extend(['d','e']) # 添加多个元素到列表
print (lst1,lst2)

运行代码之后,显示的结果为:

2、更改元素

更改单个元素:列表[索引位置] = 新元素

示例代码:

lst = [1,2,3,4,5,6,7,8,9] # 创建列表
lst[3]= 'x' # 更改指定位置的元素为新元素
print (lst)

# 以上代码运行结果:[1, 2, 3, 'x', 5, 6, 7, 8, 9]

更改多个元素:列表[起始位置,终止位置] = 新元素

lst = [1,2,3,4,5,6,7,8,9] # 创建列表
lst[3:7]= 'x','y' # 更改指定位置区间的元素为新元素,数量无需对应
print (lst)

# 以上代码运行结果:[1, 2, 3, 'x', 'y', 8, 9]

3、插入元素

插入单个元素:使用insert(index,object)函数,参数index为索引位置,表示在该位置之前插入新的元素;参数object为对象。

lst = [1,2,3,4,5,6,7,8,9] # 创建列表
lst.insert(0,'列表') # 起始位置插入新元素,0表示第一个索引位置
print (lst)

# 以上代码运行结果:['列表', 1, 2, 3, 4, 5, 6, 7, 8, 9]

插入多个元素:列表[索引位置:索引位置] = 新元素;注意,两个索引位置保持一致。

lst = [1,2,3,4,5,6,7,8,9] # 创建列表
lst[3:3]= '*','*'  # 指定位置前方插入新元素
print (lst)

# 以上代码运行结果:[1, 2, 3, '*', '*', 4, 5, 6, 7, 8, 9]

4、取出元素

使用pop(index)函数,参数index为被取出元素的索引位置。

示例代码:

lst = [1,2,3,4,5,6,7,8,9]
print (lst.pop(5))
print (lst)

运行代码之后,显示的结果为:

5、删除元素

删除指定内容元素:使用remove(object)函数可以删除列表中首次出现的与参数相同的元素,如果列表中不存在与参数相同的元素则抛出异常。

lst = ['你','我','他','我','你','他'] # 创建列表
lst.remove('我') # 删除从左至右第一个与指定内容匹配的元素
print (lst)

# 以上代码运行结果:['你', '他', '我', '你', '他']

删除单个指定位置元素:del 列表[索引位置]

lst = ['小','楼','是','个','帅','哥'] # 创建列表
del lst[3] # 删除指定位置的元素
print (lst)

# 以上代码运行结果:['小', '楼', '是', '帅', '哥']

删除多个指定位置元素:del 列表[起始位置:终止位置]

lst = ['小','楼','是','个','帅','哥'] # 创建列表
del lst[2:4] # 删除从起始位置至终止位置的多个元素
print (lst)

# 以上代码运行结果:['小', '楼', '帅', '哥']

删除末尾元素:使用pop()函数,参数为空即可。

lst = ['小','楼','真','是','帅','哥'] # 创建列表
lst.pop() # 删除末尾的元素
print (lst)

# 以上代码运行结果:['小', '楼', '真', '是', '帅']

清空所有元素:

使用clear()函数。

示例代码:

lst = [1,2,3,4,5,6] # 创建列表
lst.clear() # 清空全部元素
print (lst)

# 以上代码运行结果:[]

或者,使用del命令:del 列表[:]

lst = [1,2,3,4,5,6] # 创建列表
del lst[:] # 清空全部元素
print (lst)

# 以上代码运行结果:[]

6、列表排序

反向排序:使用reverse()函数。

lst = [3,2,4,5,6,1] # 创建列表
lst.reverse() # 反向排序列表元素
print (lst)

# 以上代码运行结果:[1, 6, 5, 4, 2, 3]

升降排序:使用sort(cmp,key,reverse)函数,参数cmp为函数,参数key为函数,reverse为布尔值(True和False)。

参数为空时默认为升序排列。

示例代码:

lst = [6,1,2,3,4,5] # 创建列表
lst.sort() # 升序排列列表元素
print (lst)

# 以上代码运行结果:[1, 2, 3, 4, 5, 6]

通过设置参数reverse=True,转换为降序排列。

lst = [6,1,2,3,4,5] # 创建列表
lst.sort(reverse=True) # 降序排列列表元素
print (lst)

# 以上代码运行结果:[6, 5, 4, 3, 2, 1]

升降序排列也可以使用函数sorted(iterable,cmp,key,reverse),参数iterable为可迭代对象;参数cmp为函数,参数key为函数,reverse为布尔值。

sorted()函数不会改变原列表。

lst = [3,2,4,5,6,1] # 创建列表
print (sorted(lst)) # 输出显示升序列表
print (sorted(lst,reverse=True)) # 输出显示降序列表
print (lst) # 输出显示原列表

# 以上代码运行结果:
# [1, 2, 3, 4, 5, 6]
# [6, 5, 4, 3, 2, 1]
# [3, 2, 4, 5, 6, 1]

7、元组转换为列表

使用list(iterable)函数,参数iterable为可迭代对象。

tup = (3,2,4,5,6,1) # 创建列表
lst = list(tup)
print (lst)


# 以上代码运行结果:[3, 2, 4, 5, 6, 1]

本节知识点:

数据结构(列表)的相关操作。

本节英文单词与中文释义:

1、list:列表

2、reverse:反向

3、true:真

4、false:假

5、append:附加

6、extend:扩展

7、insert:插入

8、pop:取出

9、remove:移除

10、del(delete):删除

11、clear:清除

12、sort:排序

转载请注明:魔力Python » Python3萌新入门笔记(8)

头像
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网站 (可选)

网友最新评论 (8)

  1. 头像
    4、取出元素的运行代码结果截图错了
    送外卖的小学生7年前 (2017-11-16)回复
    • 小楼一夜听春语
      已修正
      小楼一夜听春语7年前 (2017-11-17)回复
      • 头像
        小楼老师后面有没有关于爬虫教程的笔记~
        送外卖的小学生7年前 (2017-11-17)回复
        • 头像
          都会有的
          秃毛7年前 (2017-12-18)回复
  2. 头像
    哇哦,还需要审核呢
    秃毛7年前 (2017-12-18)回复
  3. 头像
    lst = [1,2,3,4,5,6,7,8,9] # 创建列表 lst[3:7]= 'x','y' # 更改指定位置区间的元素为新元素,数量无需对应 print (lst) # 以上代码运行结果:[1, 2, 3, 'x', 'y', 6, 7, 8, 9] 这个是运行结果是 [1, 2, 3, 'x', 'y', 8, 9]
    zkarx7年前 (2018-03-01)回复
    • 小楼一夜听春语
      是的,粘贴错了,已修正。
      小楼一夜听春语7年前 (2018-03-01)回复
  4. 头像
    :mrgreen: 已阅学习,写的很棒!
    走路爱走神7年前 (2018-05-24)回复