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

Python基础---容器List

时间:2018-02-25 12:56:46      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:永久   用法   推导   添加   int   pen   元素   法则   extend   

数据容器List

List列表:有序容器

定义:List由一系列按特定顺序排列的元素组成;

     使用 [] 表示列表,其中元素使用" , "分隔

创建列表: list = [str1, str2, str3, ...]

1 list1 = [a, b, c, d]
2 print(list1)
3 --->[a, b, c, d]

 序列操作:(用法等同于String)

1、相加:new_list = list1 +list2

2、相乘:new_list = list * num

3、成员检查:in   &   not in    

 

基本操作:

1、切片:访问List中的元素:

  获取单个元素:x = list[num]  num为元素在列表中的位置

  获取多个元素:x = list[star : end]  参数为起止区间,结果不包含end位元素

1 list1 = [a, b, c, d]
2 print(list1[2])
3 --->c
4 print(list1[0:2])
5 --->[a, b]

2、修改元素:即重新赋值:

  list[num] = str

1 list1 = [a, b, c, d]
2 list1[1] = abc
3 print(list1)
4 --->[a, abc, c, d]

3、删除元素:

   del list[num]   删除指定位置的元素,删除的元素不能再以任何方式使用

1 list1 = [a, b, c, d, e, f, g]
2 del list1[3]
3 print(list1)
4 --->[a, b, c, e, f, g]

   list.pop(num)    删除指定位置的元素,默认删除最后一位;

            删除的元素可以赋值给新的变量,继续使用

1 list1 = [a, b, c, d, e, f, g]
2 x = list1.pop()
3 print(list1)
4 --->[a, b, c, d, e, f]
5 
6 y = list1.pop(3)
7 print(list1)
8 --->[a, b, c, e, f]

 

   list.remove(str=)  根据值删除元素,删除的元素可以赋值给新的变量,继续使用

1 list1 = [a, b, c, d, e, f, g]
2 x = list1.remove(c)
3 print(list1)
4 --->[a, b, d, e, f, g]

   list.clear()     将列表元素清空,得到一个空的列表

1 list1 = [a, b, c, d, e, f, g]
2 list1.clear()
3 print(list1)
4 --->[]

 4、添加元素:

  list.append(obj)     在列表末尾添加新元素obj

1 list1 = [a, b, c, d, e, f, g]
2 list1.append(ABC)
3 list1.append(HOME)
4 print(list1)
5 --->[a, b, c, d, e, f, g, ABC, HOME]

  list.insert(index, obj)   在指定位置插入新元素,index后的元素索引自动+1

1 list1 = [a, b, c, d, e, f, g]
2 list1.insert(0, ABC)
3 print(list1)
4 --->[ABC, a, b, c, d, e, f, g]

5、复制列表:

  list.copy()

1 list1 = [a, b, c, d, e, f, g]
2 list2 = list1.copy()
3 print(list2)
4 --->[a, b, c, d, e, f, g]

6、计算列表中某元素出现的个数:

  list.count(obj)

1 list1 = [a, a, b, c, d, e, f, g]
2 print(list1.count(a))
3 --->2

7、在列表末尾一次性增加另一个列表的多个值:

  list.extend(seq)  seq为元素列表

1 list1 = [a, b, c, d, e, f, g]
2 list2 = [1, 2, 3, 4, 5]
3 list1.extend(list2[0:3])
4 print(list1)
5 --->[a, b, c, d, e, f, g, 1, 2, 3]

8、获取某元素的索引值:

  list.index(obj)

1 list1 = [a, b, c, d, e, f, g]
2 print(list1.index(d))
3 --->3

9、列表元素的排序:

  list.reverse() 永久改变;将列表元素反转,如果想改回来,再调用一次reverse()

1 list1 = [a, b, d, e, c, f, g]
2 list1.reverse()
3 print(list1)
4 --->[g, f, c, e, d, b, a]

  list.sort(key=, reverse=) 永久改变;将列表元素排序,

                默认为升序,降序reverse=True

                key参数可以设置自定义排序法则

1 list1 = [a, b, d, e, c, f, g]
2 list1.sort()
3 print(list1)
4 --->[a, b, c, d, e, f, g]

  sorted(list) 临时改变;返回一个新的列表

1 list1 = [a, b, d, e, c, f, g]
2 print(sorted(list1), id(sorted(list1)))
3 print(list1, id(list1))
4 --->[a, b, c, d, e, f, g] 88098536
5 --->[a, b, d, e, c, f, g] 88820712

 

10、列表长度

  len(list)

 

操作列表:

1、遍历列表:

  for i in list

1 list1 = [a, b, d, e, c, f, g]
2 for i in list1:
3     print(i)

2、列表推导式:用于创建新列表

  list2 = [n for n in list1 if 判断条件]

1 list1 = [1, 2, 3, 4, 5, 6]
2 list2 = [n * 3 for n in list1 if n % 2 == 1]
3 print(list2)
4 --->[3, 9, 15]

 

  

 

Python基础---容器List

标签:永久   用法   推导   添加   int   pen   元素   法则   extend   

原文地址:https://www.cnblogs.com/lambs/p/8468735.html

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