Python基础(4) 您所在的位置:网站首页 list索引举例 Python基础(4)

Python基础(4)

2024-06-06 03:04| 来源: 网络整理| 查看: 265

序列是Python中最基本的数据结构。Python有6个序列的内置类型 ( 列表、元组、字符串、Unicode 字符串、buffer对象和 xrange 对象 ),但最常见的是列表和元组。序列中的每个元素都分配一个数字 -— 它的位置(或索引),第一个索引是0,第二个索引是1,依此类推。

序列都可以进行的操作包括索引,切片,加,乘,检查成员。

此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

接下来,我将着重介绍列表的定义,特性,遍历以及其基本操作(增、删、改、查以及排序)。

一、列表的定义与创建 列表的格式:列表名=[元素1 , 元素2 , 元素3 , ... ...]空列表的定义:my_list = [](常用)    或    my_list = list()列表中的元素不需要具有相同的类型。 #定义列表list1,且列表中的元素不具有相同的类型 >>> list1=['zhangsan','male',20,50,'13729278528'] >>> type(list1) #创建空列表my_list #方法一(常用) >>> my_list=[] >>> type(my_list) #方法二 >>> my_list=list() >>> type(my_list) 二、列表的特性 与元组不同,列表中的元素可以修改;列表里面也是可以嵌套列表的;列表的元素可以是整型,浮点数,复数,布尔类型,也可以是字符串;列表是一种有序的集合,每个元素都有一个位置(即索引,索引从0开始),故列表可以进行截取、组合等。 三、列表的基本操作

1、 查找列表中的值

1.1> 使用下标索引来访问列表中的值,也可以使用方括号的形式进行截取,如下所示:

>>> list1=['zhangsan','male',20,50,'13729278528'] >>> list1[1] #获取列表list1中的第二个元素 'male' >>> list1[-1] #获取列表list1中的倒数第一个元素 '13729278528' >>> list1[1:] #获取列表list1中第二个到最后一个元素 ['male', 20, 50, '13729278528'] >>> list1[:3] #获取列表list1中第一个到第三个元素(含左不含右) ['zhangsan', 'male', 20] >>> list1[1:3] #获取列表list1中第二个到第三个元素(含左不含右) ['male', 20]

1.2> list.index(obj):从列表中找出某个值第一个匹配项的索引位置

list1=['zhangsan','male',20,50,'13729278528',20] a=list1.index(20) #从列表中找出元素20的第一个匹配项的索引位置 print(a) 运行结果: 2

2、增加列表中的元素(append,insert,extend)

2.1> list.append(obj):在列表的末尾添加新的对象

list1=['zhangsan','male',20,50,'13729278528'] list1.append(160) print(list1) list1.append(['西安','北京']) #实现列表的嵌套 print(list1) 运行结果: ['zhangsan', 'male', 20, 50, '13729278528', 160] ['zhangsan', 'male', 20, 50, '13729278528', 160, ['西安', '北京']]

2.2> list.insert(index , obj):在列表的指定位置增加元素;如果指定的位置不存在,默认会增加在列表末尾。

list1=['zhangsan','male',20,50,'13729278528'] list1.insert(4,160) #向列表的第五个位置插入160 print(list1) list1.insert(1,['西安','北京']) #向列表的第二个位置插入['西安','北京'] print(list1) list1.insert(8,'大学') #'8'超出索引范围,添加到列表的末尾 print(list1) 运行结果: ['zhangsan', 'male', 20, 50, 160, '13729278528'] ['zhangsan', ['西安', '北京'], 'male', 20, 50, 160, '13729278528'] ['zhangsan', ['西安', '北京'], 'male', 20, 50, 160, '13729278528', '大学']

2.3> list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list1=['zhangsan','male',20,50,'13729278528'] list2=['momo','famale',18,45,'13729669270'] list1.extend(list2) print(list1) 运行结果: ['zhangsan', 'male', 20, 50, '13729278528', 'momo', 'famale', 18, 45, '13729669270']

3、修改列表中的元素

修改元素的时候,要通过下标来确定要修改的是哪个元素,然后才能进行修改。

list1=['zhangsan','male',20,50,'13729278528'] list1[3]=55 print(list1) list1[2:]=[21,60,'19802979883'] #切片进行修改 print(list1) 运行结果: ['zhangsan', 'male', 20, 55, '13729278528'] ['zhangsan', 'male', 21, 60, '19802979883']

4、删除列表中的元素(del,pop,remove)

4.1> del list(index):根据列表的下标,对指定位置的元素进行删除

list1=['zhangsan','male',20,50,'13729278528'] del list1[3] #删除列表中的第四个元素 print(list1) 运行结果: ['zhangsan', 'male', 20, '13729278528']

4.2> list.pop(index):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list1=['zhangsan','male',20,50,'13729278528'] list1.pop() #默认移除列表中的最后一个元素 print(list1) list1.pop(2) #移除列表中的第三个元素 print(list1) 运行结果: ['zhangsan', 'male', 20, 50] ['zhangsan', 'male', 50]

4.3> list.remove(obj):移除列表中某个值的第一个匹配项

list1=['zhangsan','male',20,50,'13729278528',20] list1.remove(20) #移除列表中元素20的第一个匹配项 print(list1) 运行结果: ['zhangsan', 'male', 50, '13729278528', 20]

5、列表的排序

5.1> list.sort() / list.reverse():对列表进行升序排列

5.2> list.sort(reverse=True):对列表进行降序排列

>>> list1=[1,3,8,5,10,-1] >>> list1.sort() #升序排列 >>> print(list1) [-1, 1, 3, 5, 8, 10] >>> list1.sort(reverse=1) #sort(reverse=True),降序排列 >>> print(list1) [10, 8, 5, 3, 1, -1] >>> list1.reverse() #升序排列 >>> print(list1) [-1, 1, 3, 5, 8, 10] 四、列表的常用操作符 len()可以求取列表的长度 + 号用于组合列表,* 号用于重复列表in,not in 判断元素是否在列表中for x in [1, 2, 3]: print(x) 列表的遍历 len([1, 2, 3])3长度[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']重复3 in [1, 2, 3]True元素是否存在于列表中

for x in [1, 2, 3]:

     print (x)

1

2

3

迭代 五、Python列表函数&方法

六、列表的遍历 #创建一个列表,里面的元素分别为1,2,3,...10 list1 = [i for i in range(1,11)] print(list1) #创建一个列表,里面的元素分别是1-10中的偶数 list2 = [i for i in range(1,11) if i % 2 == 0] print(list2) #列表中有多个元素,每个元素的类型为元组 list3 = [(i,j) for i in range(1,4) for j in range(6,9)] print(list3) #实现分组一个列表里的元素,比如将列表a[1,2,3,...,14] 变成 列表b[[1,2,3],[4,5,6]....] a = [x for x in range(1,15)] b = [a[x:x+3] for x in range(0,len(a),3)] print(b) 运行结果: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] [2, 4, 6, 8, 10] [(1, 6), (1, 7), (1, 8), (2, 6), (2, 7), (2, 8), (3, 6), (3, 7), (3, 8)] [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14]]

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有