【python】-- 列表

Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推

列表

1、定义列表,取出列表中的值

 1 names = [] #定义空列表
 2 names = [‘a‘,‘b‘,‘c‘] #定义一个非空列表
 3
 4 # 取出列表中的值
 5
 6 >>> names = [‘a‘,‘b‘,‘c‘]
 7 >>> names[0]
 8 ‘a‘
 9 >>> names[1]
10 ‘b‘
11 >>> names[2]
12 ‘c‘
13 >>> names[-1]#倒着取最后一个值
14 ‘c‘

2、切片

 1 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] # 列表的下标值是从0开始取值的
 2 >>> names[1:3] #取1到3之间的元素,包括1,不包括3
 3 [‘b‘, ‘c‘]
 4 >>> names[1:-1] #取1到-1之间的元素,包括1,不包括-1
 5 [‘b‘, ‘c‘]
 6 >>> names[0:3]
 7 [‘a‘, ‘b‘, ‘c‘]
 8 >>> names[:3] #从头开始取,0可以省略,效果等同于names[0:3]
 9 [‘a‘, ‘b‘, ‘c‘]
10 >>> names[3:]  #想取到最后一个值,必须不能写-1,只能这么写
11 [‘d‘]
12 >>> names[0::2] #后面的2表示:每隔一个元素就取一个
13 [‘a‘, ‘c‘]
14 >>> names[::2] #从头开始0可以省略,效果跟上一句一样
15 [‘a‘, ‘c‘]

切片小结:

①序列始终都是从左向右切片的,不能是从右向左

①列表切片时,起始位的元素是包括的,结束位的元素是不包括(又叫顾头不顾尾),最后一个位置表示步长(names[开始位:结束位:步长])

②如果从0位置取值,0可以省略

③想取最后一个值时,结束位不能是-1,因为结束位的元素不包括,所以只能留空

3、列表函数&方法

函数:

方法:

演示:

 1 # append 列表末尾添加新的对象
 2 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
 3 >>> names.append(‘e‘)
 4 >>> names
 5 [‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]#e是新加的元素
 6
 7 # insert(下标值,插入的内容)
 8 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
 9 >>> names.insert(0,‘1‘) #0表示需要插入的下标值,‘1‘表示插入的内容
10 >>> names
11 [‘1‘, ‘a‘, ‘b‘, ‘c‘, ‘d‘] #在下标值为0的地方插入‘1‘
12
13 #修改列表中的元素,直接是 names[下标值] = 新值
14 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
15 >>> names[1] = ‘1‘
16 >>> names
17 [‘a‘, ‘1‘, ‘c‘, ‘d‘]
18
19
20 #扩展(extend)names2的列表合并到names1中,但是,names2这个列表依然存在,如果想删除names2这个变量,则只需del names2即可
21 >>> names1 = [‘a‘,‘b‘,‘c‘,‘d‘]
22 >>> names2 = [1,2,3,4]
23 >>> names1.extend(names2)
24 >>> names1
25 [‘a‘, ‘b‘, ‘c‘, ‘d‘, 1, 2, 3, 4]
26
27 #统计(count(元素))
28 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘,‘a‘]
29 >>> names.count(‘a‘) #统计‘a‘元素的个数
30 2
31
32 #翻转(reverse())
33 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
34 >>> names.reverse()
35 >>> names
36 [‘d‘, ‘c‘, ‘b‘, ‘a‘]  #将整个列表翻转过来
37
38 #排序(sort())
39 >>> names = [4,2,3,1]
40 >>> names.sort()
41 >>> names
42 [1, 2, 3, 4]
43
44 #获取下标值(index(元素))
45 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
46 >>> names.index(‘a‘)
47 0
48
49 #清空列表(clear())
50 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
51 >>> names.clear()
52 >>> names
53 []

删除(del、remove(元素)、pop())

#根据下标值删除元素
>>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
>>> del names[0]
>>> names
[‘b‘, ‘c‘, ‘d‘]
#根据元素删除
>>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
>>> names.remove(‘a‘)
>>> names
[‘b‘, ‘c‘, ‘d‘]
#删除最后一个
>>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
>>> names.pop()
‘d‘
>>> names
[‘a‘, ‘b‘, ‘c‘]

扩展:

#如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的
>>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
>>> names.pop(1) #在输入下标值得情况下和del的效果是一样的
‘b‘
>>> names
[‘a‘, ‘c‘, ‘d‘]

#del关键字不仅可以删除列表中的元素,也可以删除变量
names = [‘a‘,‘b‘,‘c‘,‘d‘]
#删除names这个变量
del names

copy:

1 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘]
2 >>> names2 = names.copy()
3 >>> names2
4 [‘a‘, ‘b‘, ‘c‘, ‘d‘]

注:这边的copy都是浅copy,只能copy第一层。深浅拷贝的详细信息:点击这里

时间: 2024-10-08 01:58:21

【python】-- 列表的相关文章

python列表和QVariant

pyqt中,要给QAbstractTableModel的setData函数传递一个list参数: [20,'00:00:19'] 涉及到QVariant和list的转换. 可以使用QVariant类中的toPyObject是转换. 环境是:Python 2.7.6 pyqt4 4.8.6 有文章说是,toPyObject只能转换字符串,而且只能转换字典. 测试一下,支持数字,支持字典和列表. #coding:utf-8 from PyQt4.QtCore import QVariant a={2

Python列表的增删改查排

Python列表的增删改查排 一.列表的样子: a = ['q' , 'w' , 'e ', 'r','t'] a为列表名,[ ]为列表内容,' '为列表内的元素,'q'为a[0] 二.查(也称切片): print ( a[0] )          #取出列表中第一个元素 即:q print ( a[1:] )        #从第二个元素开始取到最后 即:['w', 'e','r', 't'] print ( a[1:3] )        #取出从第二个开始到第三个元素 即:['w','e

python列表和元组的方法和属性

python序列的共性 python序列包括列表和元组,序列都有索引,第一个元素索引为0,序列都可以进行索引.加.乘.切片.检查成员. python列表 列表是最常用的数据类型之一,通过[,,,]建立,可以给变量赋值空列表[].列表的数据项可以是不同类型的,可以嵌套. 列表的索引和字符串操作一样,同样可以截取例如a[1:2] / a[1:] / a[:3] 列表的更新: 1.修改:通过索引直接赋值来修改列表中的值. 2.新增:通过list.append(),在末尾处添加元素. 3.删除: A.通

[转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_start = sample_list[0] end_value = sample_list[-1] 删除列表的第一个值 del sample_list[0] 在列表中插入一个值 sample_list[0:0] = ['sample value'] 得到列表的长度 list_length = len(sa

python 列表推导

python 列表推导 python List Comprehensions List Comprehensions List comprehensions are an elegant way to build a list without having to use different for loops to append values one by one. 最简单形式 [ expression-involving-loop-variable for loop-variable in s

Python 列表(list)操作

创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_start = sample_list[0] end_value = sample_list[-1] 删除列表的第一个值 del sample_list[0] 在列表中插入一个值 sample_list[0:0] = ['sample value'] 得到列表的长度 list_length = len(sa

python 列表推导式----轻量级循环

列表推导式(list comprehension)是利用其他列表创建新列表(类似于数学术语中的集合推导式)的一种方法.它的工作方式类似于for循环,也很简单: In [39]: [x*x for x in range(10)]Out[39]: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 如果只想打印出那些能被3整除的平方数,只需要通过添加一个if部分在推导式中就可以完成: In [41]: [x*x for x in xrange(10) if x % 3 == 0

Python列表、元组、字典和字符串的常用函数

Python列表.元组.字典和字符串的常用函数 列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中包含3个元组),相当于ls和object合并.注意:object如果是整型,必须以列表的方式传入,不可以以整型或元组的方式传入 2.ls.append(object) 将object作为一个整体插入到ls最后,object可以是字符串,元组,列表和字典 3.ls.insert(index, object

Python 列表(Lists)

Python 列表(Lists) 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列都可以进行的操作包括索引,切片,加,乘,检查成员. 此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法. 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现. 列表的数据项不需要具有相同的类型 创建一个列表,只要把逗号分隔

Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

[python] view plaincopy 创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_start = sample_list[0] end_value = sample_list[-1] 删除列表的第一个值 del sample_list[0] 在列表中插入一个值 sample_list[0:0] = ['sample value'] 得到列表