#!/usr/bin/env python3# -*- coding: utf-8 -*-#Author:Jam #0、列表‘‘‘序列是最基本的数据结构,序列中的每个元素都分配一个数字,它的位置索引第一个是0,第二个是1,以此类推列表是最常用的python数据类型,作为一个方括号内的逗号分隔值出现列表的数据项不需要具有相同的类型‘‘‘ #1、创建一个列表list1 = [‘google‘,‘Runoob‘,1997,2000]list2 = [1,2,3,4,5]list3 = ["a","b","c","d","e"]#print(list1,‘\n‘,list2,‘\n‘,list3) #3行一起打印,使用\n换行print(‘‘‘%s%s%s‘‘‘%(list1,list2,list3)) #3行一起打印,使用‘‘‘ ‘‘‘符号#输出结果:‘‘‘[‘google‘, ‘Runoob‘, 1997, 2000][1, 2, 3, 4, 5][‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]‘‘‘ #2、访问列表中的值#和字符串一样,列表索引从0开始,可以进行截取、组合等。list1 = [‘google‘,‘Runoob‘,1997,2000]print("list1[0]:",list1[0]) # 使用下标来访问列表中的值print("list1[1:4]",list1[1:4]) #列表可以使用方括号的形式截取字符#输出结果:‘‘‘list1[0]: googlelist1[1:4] [‘Runoob‘, 1997, 2000]‘‘‘ #3、更新列表#可以对列表的数据进行修改或更新,也可以使用append()方法来添加列表项:list1 = [‘google‘,‘Runoob‘,1997,2000]print("list列表的第三个元素为:",list1[2])list1[2] = 2001print("更新后的list列表的第三个元素为:",list1[2])‘‘‘list列表的第三个元素为: 1997更新后的list列表的第三个元素为: 2001‘‘‘ #4、删除列表元素#可以使用del 来删除列表的元素list1 = [‘google‘,‘Runoob‘,1997,2000]print("list列表:",list1)del list1[2]print("删除list列表的第三个元素:",list1)#输出结果:‘‘‘list列表: [‘google‘, ‘Runoob‘, 1997, 2000]删除list列表的第三个元素: [‘google‘, ‘Runoob‘, 2000]‘‘‘ #5、列表脚本操作符#列表对+ 和 *操作符与字符串相似。+号用于组合列表,*号用于重复列表‘‘‘如下所示:Python 表达式 结果 描述len([1, 2, 3]) 3 长度[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合[‘Hi!‘] * 4 [‘Hi!‘, ‘Hi!‘, ‘Hi!‘, ‘Hi!‘] 重复3 in [1, 2, 3] True 元素是否存在于列表中for x in [1, 2, 3]: print(x) 1 2 3 迭代‘‘‘#输出结果‘‘‘以下在python交互器中练习:>>> len([1,2,3])3>>> [1,2,3] + [4,5,6][1, 2, 3, 4, 5, 6]>>> [‘Hi!‘] * 4[‘Hi!‘, ‘Hi!‘, ‘Hi!‘, ‘Hi!‘]>>> 3 in [1,2,3]True>>> for x in [1,2,3]: print(x)...123‘‘‘ #6、列表截取#列表的截取与字符串操作类型,如下所示:L=[‘Google‘, ‘Runoob‘, ‘Taobao‘]#操作:‘‘‘Python 表达式 结果 描述L[2] ‘Taobao‘ 读取第三个元素L[-2] ‘Runoob‘ 从右侧开始读取倒数第二个元素: count from the rightL[1:] [‘Runoob‘, ‘Taobao‘] 输出从第二个元素开始后的所有元素‘‘‘#练习输出:‘‘‘>>> L = [‘Google‘,‘Runoob‘,‘Taobao‘]>>> L[2]‘Taobao‘>>> L[-2]‘Runoob‘>>> L[1:][‘Runoob‘, ‘Taobao‘]>>>‘‘‘ #7、列表拼接‘‘‘>>> squares = [1,4,9,16,25]>>> squares + [36,49,64,81,100][1, 4, 9, 16, 25, 36, 49, 64, 81, 100]‘‘‘ #8、列表嵌套#使用列表嵌套即在列表里面创建其它列表‘‘‘>>> a = [‘a‘,‘b‘,‘c‘]>>> n = [1,2,3]>>> x = [a,n]>>> x[[‘a‘, ‘b‘, ‘c‘], [1, 2, 3]]>>> x[0][‘a‘, ‘b‘, ‘c‘]>>> x[1][1, 2, 3]>>> x[0][1]‘b‘>>> x[1][1]2‘‘‘ #9、python列表函数‘‘‘序号 函数1 len(list)列表元素个数2 max(list)返回列表元素最大值3 min(list)返回列表元素最小值4 list(seq)将元组转换为列表‘‘‘ #9.1、len()方法#描述:len()方法返回列表元素个数#语法:len(list)#参数:list是要计算元素个数的列表#返回值:返回列表元素个数#实例:#以下这一段测试在pycharm里面没有输出,刚开始不知道是什么原因,发现代码在Python交互器里面正常的,后来发现再往上翻的代码中使用了#list命名的变量,list在解释器里面是一个属于模块的东西,变量命名要尽量避开这些跟函数名、方法名重叠的名称。list1 = [‘Google‘, ‘Runoob‘, ‘Taobao‘]print (len(list1))#输出:3list2=list(range(5)) # 创建一个 0-4 的列表print (len(list2))#输出:5print(list2)#输出:[0, 1, 2, 3, 4]#python交互器输出结果:‘‘‘>>> list1 = [‘Google‘, ‘Runoob‘, ‘Taobao‘]>>> print(len(list1))3>>> list2=list(range(5))>>> print(len(list2))# 创建一个 0-4 的列表5>>> print(list2)[0, 1, 2, 3, 4]‘‘‘#9.2、max()方法#描述:max()方法返回列表元素中的最大值#语法:max(list)#参数:list是要返回最大值的列表#返回值:返回列表元素中的最大值#实例:list1,list2 = [‘Google‘,‘Runoob‘,‘Taobao‘],[456,700,200]print("list1 最大元素值:",max(list1))print("list2 最大元素值:",max(list2))#输出结果:#list1最大元素值: Taobao#list2 最大元素值: 700#9.3、min()方法#描述:min()方法返回列表元素中的最小值#语法:min(list)#参数:list是要返回最小值的列表#返回值:返回列表元素中的最小值#实例:list1,list2 = [‘Google‘,‘Runoob‘,‘Taobao‘],[456,700,200]print("list1 最小元素值:",min(list1))print("list2 最小元素值:",min(list2))#输出结果:#list1最小元素值: Google#list2 最小元素值: 200#9.4、list()方法#描述:list()方法用于将元组转换为列表#注:元组与列表非常类似,区别在于元组的元素值不能修改,元组放在括号中,列表放在方括号中。#语法:list(seq)#参数:list是要转换为列表的元组#返回值:返回列表#实例:aTuple = (123,‘Google‘,‘Runoob‘,‘Taobao‘)list1 = list(aTuple)print(‘列表元素:‘,list1)#结果输出:#列表元素: [123, ‘Google‘, ‘Runoob‘, ‘Taobao‘]‘‘‘交互器练习:>>> aTuple = (123,‘Google‘,‘Runoob‘,‘Taobao‘)>>> list1 = list(aTuple)>>> print(‘列表元素:‘,list1)列表元素: [123, ‘Google‘, ‘Runoob‘, ‘Taobao‘]>>> type(list1)<class ‘list‘>>>> type(aTuple)<class ‘tuple‘>>>>‘‘‘str = "Hello World"list2 = list(str)print(‘列表元素:‘,list2)#结果输出:#列表元素: [‘H‘, ‘e‘, ‘l‘, ‘l‘, ‘o‘, ‘ ‘, ‘W‘, ‘o‘, ‘r‘, ‘l‘, ‘d‘]‘‘‘交互器练习:>>> str = "Hello World">>> list2 = list(str)>>> print(‘列表元素:‘,list2)列表元素: [‘H‘, ‘e‘, ‘l‘, ‘l‘, ‘o‘, ‘ ‘, ‘W‘, ‘o‘, ‘r‘, ‘l‘, ‘d‘]>>> type(str)<class ‘str‘>>>> type(list2)<class ‘list‘>>>>‘‘‘#10、python列表方法#10.1、list.append(obj)#描述:在列表末尾添加新的对象#语法:list.append(obj)#参数:obj--添加到列表末尾的对象#返回值:该方法无返回值,但是会修改原来的列表#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘]list1.append(‘Baidu‘)print("更新后的列表:",list1)#输出:#更新后的列表: [‘Google‘, ‘Runoob‘, ‘Taobao‘, ‘Baidu‘]#10.2、list.count(obj)#描述:count()方法用于统计某个元素在列表中出现的次数#语法:list.count(obj)#参数:obj--列表中统计的对象#返回值:返回元素在列表中出现的次数#实例:aList = [123,‘Google‘,‘Runoob‘,‘Taobao‘,123]print("123 元素的个数:",aList.count(123))print("Runoob 元素的个数:",aList.count(‘Runoob‘))#结果输出:#123 元素的个数: 2#Runoob 元素的个数: 1#10.3、list.extend(seq)#描述:extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)#语法:list.extend(seq)#参数:seq--元素列表#返回值:该方法没有返回值,但会在已经存在的列表中添加新的列表内容#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘]list2 = list(range(5))list1.extend(list2)print("扩展后的列表:",list1)#结果输出:#扩展后的列表: [‘Google‘, ‘Runoob‘, ‘Taobao‘, 0, 1, 2, 3, 4]#10.4、list.index(obj)#描述:index() 函数用于从列表中找出某个值第一个匹配的索引位置#语法:list.index(obj)#参数:obj--查找的对象#返回值:该方法返回查找对象的索引位置,如果没有找到对象则抛出异常#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘]print(‘Runoob 索引值为:‘,list1.index(‘Runoob‘))print(‘Taobao 索引值为:‘,list1.index(‘Taobao‘))#结果输出:#Runoob 索引值为: 1#Taobao 索引值为: 2#10.5、list.insert()#描述:insert()函数用于将指定对象插入列表的指定位置#语法:list.insert(index,obj)#参数:#index--对象obj需要插入的索引位置# obj--要插入列表的对象#返回值:该方法没有返回值,但会在列表指定位置插入对象#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘]list1.insert(1,‘Baidu‘)print("列表插入元素后为:",list1)#结果输出:#列表插入元素后为: [‘Google‘, ‘Baidu‘, ‘Runoob‘, ‘Taobao‘]#10.6、list.pop()#描述:pop()函数用于移除列表中的一个元素(默认是最后一个元素),并且返回该元素的值#语法:list.pop(obj=list[-1])#参数:# obj--可选参数,要移除列表元素的对象#返回值:该方法返回从列表中移除的元素对象#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘]list1.pop()print(‘列表现在为:‘,list1)list1.pop(1)print(‘列表现在为:‘,list1)#结果输出:#列表现在为: [‘Google‘, ‘Runoob‘]#列表现在为: [‘Google‘]#10.7、list.remove()#描述:remove()函数用于移除列表中某个值的第一个匹配项#语法:list.remove(obj)#参数:# obj--列表中要移除的对象#返回值:该方法没有返回值,但是会移除列表中某个值的第一个匹配项。#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘,‘Baidu‘]list1.remove(‘Taobao‘)print("列表现在为:",list1)list1.remove(‘Baidu‘)print("列表现在为:",list1)#结果输出:#列表现在为: [‘Google‘, ‘Runoob‘, ‘Baidu‘]#列表现在为: [‘Google‘, ‘Runoob‘]#10.8、list.reverse()#描述:reverse()用于反向列表中的元素#语法:list.reverse()#参数:#N/A=Not Available(不必要的)#返回值:该方法没有返回值,但是会对列表的元素进行反向排序#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘,‘Baidu‘]list1.reverse()print("列表反转以后:",list1)#结果输出:#列表反转以后: [‘Baidu‘, ‘Taobao‘, ‘Runoob‘, ‘Google‘]#10.9、list.sort([])#描述:sort()函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。#语法:list.sort([func])#参数:#fune--可选参数,如果指定了该参数会使用该参数的方法进行排序#返回值:该方法没有返回值,但是会对列表的对象进行排序#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘,‘Baidu‘]list1.sort()print("列表排序后:",list1)#结果输出:#列表排序后: [‘Baidu‘, ‘Google‘, ‘Runoob‘, ‘Taobao‘]#10.10、list.clear()#描述:clear()函数用于清空列表,类似于del a[:]#语法:list.clear()#参数:无#返回值:该方法没有返回值#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘,‘Baidu‘]list1.clear()print("列表清空后:",list1)#结果输出:#列表清空后: []#10.11、list.copy()#描述:copy()用于复制列表,类似于a[:]#语法:list.copy()#参数:无#返回值:返回复制后的新列表#实例:list1 = [‘Google‘,‘Runoob‘,‘Taobao‘,‘Baidu‘]list2 = list1.copy()print("list2列表:",list2)list3 = list1[:]print("list3列表:",list3)#结果输出:#list2列表: [‘Google‘, ‘Runoob‘, ‘Taobao‘, ‘Baidu‘]#list3列表: [‘Google‘, ‘Runoob‘, ‘Taobao‘, ‘Baidu‘]
时间: 2024-11-03 05:42:20