码迷,mamicode.com
首页 > 编程语言 > 详细

python的列表学习

时间:2018-08-12 21:32:54      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:insert   dex   返回   数据规模   结构   表连接   err   通过   int   

①列表list表示方法
lst = [若干个(0,1个或多个)元素(数值 字符串 列表 对象等)]
lst = list(可选可迭代对象) list可以把迭代对象一个个拿出来放列表里面
列表不能一开始定义大小
例如:l = [ ]空列表
L=list()空列表
l = [1,2]两个元素
l = [[1,2],3,[‘a’]]里面三个元素
l = [1]一个元素
l = list([1]) 这样写不报错,[1]列表是可迭代对象
l = [range(5)]一个元素
l = list(range(5))返回一个[0,1,2,3,4]列表
l = list([0,1,2])返回一个[0,1,2]列表,复合结构,[0,1,2]是可迭代对象, 这样写多余
② 列表的索引
索引也叫下标
正索引:从左到右,从0 开始
负索引:从右到左,从-1开始
正负索引不能超界,否则引发异常IndexError
左边头部 右边尾部
左边下界,右边上界
列表通过索引访问
list[index] index就是索引编号,使用中括号访问 速度较快,不用遍历
③ 列表查询
Index(val,[start,stop])
语法:列表名.index(value,[start,stop]) 返回--?索引编号(int) 遍历
通过值来能查索引编号,能查到,返回第一个匹配到索引编号,查不到就报错valueError
时间复杂度是O(n),随着列表数据规模的增大,而效率下降
count(value)
语法:列表名.count(value,[start,stop]), 返回--?值出现次数(int)遍历
通过值来能查出现次数,全遍历,返回值出现次数,查不到不会保错
时间复杂度是O(n),随着列表数据规模的增大,而效率下降
len(列表) --?列表元素的个数int
返回列表元素的个数,不管哪里减 -1 不管哪里加 +1
④ 列表元素修改
索引访问修改
语法:list[index索引编号] = value
索引不要超界
时间复杂度O(1)
O(n)---? O(1)
⑤ 列表增加 插入元素
append(一个元素) --?None 就地修改
列表尾部追加元素,返回None
返回None就意味着没有新的列表产生,就地修改
时间复杂度是O(1)
insert(索引编号,一个元素)--?None 就地修改
在指定的索引index处插入元素
返回None就意味着没有新的列表产生+,就地修改
时间复杂度是O(n)
超越下界,头部追加
超越上界,尾部追加
头部追加 列表名.insert(0,“a”)
尾部追加 列表名.append(“a”)
print(l.insert/append(0,”a”)) --?None
l.insert/append(0,”a”)
print(l)
extend(可迭代对象) --?None
将可迭代对象的元素尾部追加进来,返回None,就地修改
l.extend(range(5))
l 就地修改

  • ---?返回一个新的列表list
    两个列表直接合并
    连接操作,将两个列表连接起来
    产生新的列表,原列表不变
    l + list(range(5)) 返回新的列表[1,2,0,1,2,3,4,]
  • ---?返回一个新的列表
    重复操作,将本列表元素重复n次,返回新的列表,原列表不变
    [1,2]3 [1,2,1,2,1,2]
    (l1
    3).append(list(range(5)) 还是一个元素
    (l1*3).extend(list(range(5))正确的写法

python的列表学习

标签:insert   dex   返回   数据规模   结构   表连接   err   通过   int   

原文地址:http://blog.51cto.com/13886172/2158506

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!