列表

列表

  • 列表List与编译型语言的数组类似,不同点是,数组数据类型一致,列表元素的数据类型可以不同
  • 字符串能用,列表都能用
列表常用函数! list
最后位置追加 .extend ( )
任意位置插入元素 .insert ( 插入的位置 , 插入的内容 )
删除元素 .remove ( 元素内容 ) // .pop( 元素下标 )
正排序 .sort ( )
逆排序 .reverse ( )
列表赋值 因为解释型语言python没有指针,并且列表存储采用栈存储的方式,采用变量名指向数据栈空间
例如: a=[1,2,3,4] => b=a => b与a同时操作[1,2,3,4]这个列表
列表作为函数的参数! 直接将列表名,作为函数参数,可以实现函数调用整个列表的数据
  • 注意:在函数内部对列表的操作会实际影响main函数的列表
  • 注意:与列表操作不同,在函数与main函数对2个相同变量名的变量进行操作,两者不相关,参考前面的关于变量介绍的文章.
查找列表中的某个元素,并返回该元素第一次出现的位置 [1,2,3].index( 2 ) ==> 1
  • 全部查找 ==> O ( n )
  • 每次只查找一半 ==> O ( log 2 n )
时间复杂度!O ( ) 只保留高阶项列表
不同时间复杂度的增长率! 列表

2分查找图示与代码实现

( 例:找44 )

列表
列表列表列表

排序Sort

选择排序 每次选择最小的元素
冒泡排序 元素像一个气泡,一直在向上冒!
选择排序(循环找最小的元素放在第一位) 列表
冒泡排序(N给元素的列表,循环N次,将相邻的元素小的放左边) 列表
python函数内部的sorted内建排序函数 使用方法
sorted ( ) 函数 sorted ( 待排序的列表名 )
.sort()方法 列表名.sort( )
.sort( )方法详解! 举例
sort函数之参数reverse reverse = Ture 表示正序 // reverse = False 表示逆序
sort函数之参数key函数>>>key函数指定取待排序元素的哪一项进行排序 列表列表
  • python内建函数sort函数采用的是快速排序,时间复杂度为O(nlog n)

嵌套列表=2维列表

二维列表 举例
创建: 二维列表名 = [ [ x , x , x ],[ x , x , x ],[ x , x , x ] ]
取值: 二维列表名 = [ 行 - 1 ] [ 列 - 1 ]
列表的解析 举例
解析形式: [ 表达式 for 变量 in 列表 if 条件]
例如:构建一个x*x,其中x取1,2,…8,9 列表
求X的因数之和 列表
求平均分 列表

匿名函数lambda

  • 匿名函数主要用于sort()排序的key函数
匿名函数 lambda
注意: 匿名函数无法直接调用,必须将它赋值给某个变量,该变量名就相等于该函数的映射关系
构建方法: 变量 = lanmbda 参数名 : 代码块
例子: f = lambda x : x*x >>> f( 4 ) == 16
例子: 列表