当前位置:博客首页 > Python > 正文

第4课 Python列表增删改查、操作符、内建函数

作者: Jarvan 分类: Python 发布时间: 2019-04-08 09:19 百度已收录

一、列表的创建

1. 一维列表

空列表的创建方法

  • 使用list函数创建:list1 = list()
  • 使用[]创建一个空列表:list2 = []
  • 使用字符串的.split方法创建:list3 = “”.split()

快速创建自定义列表

list1 = list("asdfsdve")
#打印结果为:['a', 's', 'd', 'f', 's', 'd', 'v', 'e']

2. 多维列表的创建

即列表嵌套列表,如list1 = [[“ab”,123],[“cd”,123,”ted”]]

3. 使用列表推导式(解析式)创建列表

list1 = [x for x in range(5)]
#输出结果为[0, 1, 2, 3, 4]

二、列表的访问

  • 一维列表访问,使用索引值:list1=[1,2,3,4,5] list1[0]
  • 多维列表访问list1 = [[1, 2, 3, 4, 5], [‘a’, ‘b’, ‘c’]] list1[0][2]
  • 使用for循环遍历
  • 使用pop方法来获取列表中的元素,pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值,示例:list1 = [1, 2, 3, 4, 5] quzhi = list1.pop(2),则返回的值为3

三、列表的增、删、改、查、排序

修改

list1 = [1,2,3,4]
list1[0] = 66
#通过下标(索引值)修改
list1 = [1,2,3,4]
list1[1:3] = [66]
#输出结果为[1,66,4],这是通过切片的方式修改,需注意切片的方式修改的时候,右值必须是可迭代类型(能用for循环遍历的),目前学习的可迭代的为字符串和列表

增加(append、insert)

目前有两种方法,append()和可在指定位置追加的insert(1,’a’)

扩展列表(extend)

list1 = [1,2,3,4]
list2 = ['a', 'b', 'c', 'd']
list1.extend(list2)
# 使用extend方法可以将另一个列表中的元素全部添加到列表中

删除元素(pop、remove)

  • 使用.pop()方法,可以返回被删除元素,默认删除最后一个元素,也可以list1.pop(1)的方式指定删除某下标对应的元素
  • 使用.remove()方法删除指定元素,不会返回被删除元素,方法:list1.remove(“a”),即把字符串a从列表中删除,且值删除第一个”a”

列表排序(sort、reverse、内置sorted)

升序sort方法默认是升序排序,排序一般是对同一种元素组成的列表排序,或使用python内置的sorted方法,用法相同,唯一区别是,sort方法在原列表修改,而sorted方法是新建了一个列表

list1 = [4, 1, 3, 6, 2, 5]
list1.sort()
#输出结果为[1, 2, 3, 4, 5, 6]

降序:list1.sort(reverse = True),True首字母必须大写,

list1 = [4, 1, 3, 6, 2, 5]
list1.sort(reverse = True)
#输出结果为[6, 5, 4, 3, 2, 1]
list1.sort(cmp=lambda x, y: -1)
#指定sort方法中的cmp参数的返回值为-1对列表进行倒序,此方法经验证在python 3.x上已经失效

倒序:list1.reverse(),将列表倒序排列

list1 = [4, 1, 3, 6, 2, 5]
list1.reverse()
# 输出结果为[5, 2, 6, 3, 1, 4]

四、列表操作符(相加,重复,切片)

相加(+)

list1 = [1, 2, 3, 4]
list2 = [5, 6, 7]
list3 = list1 + list2

重复(*)

list1 = [1, 2, 3]
list2 = list1 * 3
# 使用*号可以将列表中的元素重复n次,返回一个重复之后新的列表,输出结果为[1, 2, 3, 1, 2, 3, 1, 2, 3]

成员操作符(in, not in)

返回布尔类型

list1 = [1,2,3]
1 in list1
5 not in list1

切片操作

[:] 得到整个列表中的所有元素
[:end] 得到从开始到end-1的所有元素
[start:] 得到从start开始到结束的所有元素
[start: end] 得到从start到end-1的所有元素
[start: end: step] 从start到end中每隔step取一个元素

五、列表的内建函数

列表内建函数

六、列表的其他操作

列表其他操作

作业

  • 掌握python列表的所有相关操作,及对应的知识点。因为列表在python中用得是非常多的。

已完成

  • 用sum函数结合前面学到的列表相关知识,一句话计算出从1加到100的和
print(sum(list(range(1,101))))
  • 将题目2改成计算100内所有奇数的和又该怎么做
print(sum(list(range(1,101,2))))
  • 熟练掌握列表的切片操作,切片操作对于所有的序列类型都是通用的,掌握了一种就能掌握其他的

已完成

发表评论