Python 列表list使用介绍

作者:mdxy-dxy 时间:2021-01-03 09:37:16 

一组有序项目的集合可变的数据类型【可进行增删改查】列表中可以包含任何数据类型,也可包含另一个列表【可任意组合嵌套】列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔列表可通过序号访问其中成员

定义

>>> l = [] #空列表>>> l = [1,2,3]>>> l = [1,2,3,['a','b']]>>> l = list('linuxeye')>>> l['l', 'i', 'n', 'u', 'x', 'e', 'y', 'e']>>> l = list(range(5))>>> l[0, 1, 2, 3, 4]>>> l = '1;2;3;4;5'.split(';')>>> l['1', '2', '3', '4', '5']

内建函数list(a_sequence) 可以将一个序列转为列表

索引
正索引是编号是从左到右,0开始;负索引编号是从右往左,-1、-2 …;取范围值都是从左至右

>>> LanguageList = ['Python','Shell','Perl','PHP','java','C',"C++","Lisp"]>>> LanguageList[0] #取第一个值'Python'>>> LanguageList[3] #第四个值'PHP'>>> LanguageList[3:]['PHP', 'java', 'C', 'C++', 'Lisp']>>> LanguageList[:3]['Python', 'Shell', 'Perl']>>> LanguageList[2:5]['Perl', 'PHP', 'java']

>>> LanguageList[-1] #倒数第一个值'Lisp'>>> LanguageList[-2] #倒数第二个值'C++'>>> LanguageList[-5:]['PHP', 'java', 'C', 'C++', 'Lisp']>>> LanguageList[-5:-2]['PHP', 'java', 'C']>>> LanguageList[:-2]['Python', 'Shell', 'Perl', 'PHP', 'java', 'C']

增加元素

>>> LanguageList['Python', 'Shell', 'Perl', 'PHP', 'java', 'C', 'C++', 'Lisp']>>> LanguageList.append('GO')>>> LanguageList['Python', 'Shell', 'Perl', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO']>>> LanguageList.insert(3,'Python') #往PHP元素前插入>>> LanguageList['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO']>>> LanguageList.extend(['Ruby','C#'])>>> LanguageList['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#']

搜索

>>> LanguageList = ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#']>>> LanguageList.index('Python')0>>> LanguageList.index('C')6>>> LanguageList.index('c')Traceback (most recent call last): File "<stdin>", line 1, in <module>ValueError: list.index(x): x not in list>>> 'c' in LanguageListFalse>>> LanguageList.index('Python') #统计一个元素的出现次数2

删除元素

>>> LanguageList = ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#']>>> LanguageList.remove('C')>>> LanguageList.remove('Python')>>> LanguageList.remove('c')Traceback (most recent call last): File "<stdin>", line 1, in <module>ValueError: list.remove(x): x not in list>>> LanguageList.pop()'C#'>>> LanguageList['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby']>>> LanguageList.pop(-2)['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'Ruby']>>> del LanguageList[-3:-1]>>> LanguageList['Shell', 'Perl', 'Python', 'PHP', 'java', 'Ruby']

remove从列表中只删除一个值的首次出现。
pop会做两件事: 删除列表的最后一个元素, 然后返回删除元素的值。

修改元素

>>> LanguageList = ['Python','Shell', 'Perl', 'Python', 'PHP', 'java', 'Ruby']>>> LanguageList[-2] = 'C'>>> LanguageList['Python', 'Shell', 'Perl', 'Python', 'PHP', 'C', 'Ruby']>>> LanguageList[LanguageList.index('C')] = 'JAVA'>>> LanguageList['Python', 'Shell', 'Perl', 'Python', 'PHP', 'JAVA', 'Ruby']

运算符

>>> LanguageList['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby']>>> LanguageList = LanguageList + ['Python','C']>>> LanguageList['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby', 'Python', 'C']>>> LanguageList += ['java']>>> LanguageList['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby', 'Python', 'C', 'java']>>> NumList = [1,2,3] * 3>>> NumList[1, 2, 3, 1, 2, 3, 1, 2, 3]

排序

>>> NumList = [2,5,3,6,1,4]>>> NumList.reverse()>>> NumList[4, 1, 6, 3, 5, 2]>>> NumList[::-1] #和reverse效果相同>>> NumList[2, 5, 3, 6, 1, 4]>>> NumList.sort()>>> NumList[1, 2, 3, 4, 5, 6]

sort可接受参数

cmp,比较函数,接受两个参数,小于时返回负,大于返回正,相等返回0key,指定排序键reverse,指定是否反序

列表的比较操作 , 隐式调用cmp方法 , 比较规则是逐个扫描元素进行比较, 如果可以比较 , 则比较, 如果相等扫描下一个元素 , 如果不相等返回结果 , 如果两个元素类型不可以比较 , 就比较两个对象的 id()值。如果一直相等 ,直到一个列表扫描结束 , 那么返回较长的列表较大

>>> L = [(13,54),(11,59),(15,55),(12,57),(10,56)]>>> L.sort(key=lambda x:x[1])>>> L[(13, 54), (15, 55), (10, 56), (12, 57), (11, 59)]>>> L.sort(key=lambda x:x[1],reverse=1) #或者reverse=True>>> L[(11, 59), (12, 57), (10, 56), (15, 55), (13, 54)]

sort与sorted函数区别

NumList = [2, 5, 3, 6, 1, 4]>>> sorted(NumList)[1, 2, 3, 4, 5, 6]>>> NumList[2, 5, 3, 6, 1, 4]>>> NumList.sort()>>> NumList[1, 2, 3, 4, 5, 6]

sort: 在原list上排序,不返回排序后的list
sorted: 不改变原list,返回排序后的list

标签:Python,列表,list
0
投稿

猜你喜欢

  • oracle 会话 死锁 执行sql 执行job的方法

    2024-01-18 20:24:59
  • 数学公式“四又二分之一”

    2009-01-14 20:03:00
  • php实现简单的权限管理的示例代码

    2024-05-05 09:18:37
  • SQL Server复制功能 巧妙选择避开Bug

    2011-01-04 17:03:00
  • node命令行服务器(http-server)和跨域的实现

    2021-03-10 05:00:09
  • 巧用Dreamweaver制作复杂图像

    2010-09-02 12:34:00
  • Python网页解析利器BeautifulSoup安装使用介绍

    2021-06-12 05:00:00
  • Python tkinter padx参数详解

    2022-03-12 06:09:50
  • Python整型运算之布尔型、标准整型、长整型操作示例

    2021-01-28 06:39:15
  • Python多版本开发环境管理工具介绍

    2024-01-02 07:13:43
  • JavaScript学习心得之如何走出初学困境

    2008-12-24 13:30:00
  • Python3中常见配置文件写法汇总

    2022-01-21 11:14:07
  • Vue实现步骤条效果

    2024-04-28 10:54:23
  • 微软建议的ASP性能优化28条守则(9)

    2005-05-30 16:05:00
  • SQL Servr 2008空间数据应用系列四:基础空间对象与函数应用

    2011-02-23 15:01:00
  • 详解Python Flask框架的安装及应用

    2022-06-20 11:12:50
  • python学习笔记:字典的使用示例详解

    2022-06-14 16:31:31
  • python调用接口的4种方式代码实例

    2022-01-15 17:03:30
  • IE中不可遍历的属性

    2010-01-19 13:47:00
  • 详解MySQL索引原理以及优化

    2024-01-16 18:18:25
  • asp之家 网络编程 m.aspxhome.com