2019独角兽企业重金招聘Python工程师标准>>>

目录:

1:序列操作

   ------索引

   ------分片

   ------步长

   ------序列运算

   ------成员资格检验

   ------内建函数-len-max-min

2:列表操作

   ------list函数    

   ------改变列表

   ------删除元素

   ------分片赋值

3:列表方法

   ------append 在列表末尾添加新的元素

   ------count 统计某个元素在列表中出现的次数

   ------extend 在列表末尾一次性追加多个元素

   ------index 从列表中找出某个元素第一个匹配项的索引位置

   -----insert 将对象插入到列表中的某一个索引位置

   ------pop 默认从列表中最后一个移除元素

   ------remove 移除列表中某个值的第一个匹配项

   ------reverse 将列表中的元素反向存放

   ------sort 在原位置对列表进行排序

 

 

一:序列操作

  数据结构是通过某种方式组织在一起的数据元素的集合,这些数据元素可以是数字,字符串门,在python中最基本的数据结构是序列。

 

序列号

 

解析:列表中的每一个值都称为元素,每一个元素都有自己的一个序列号,也称编号或者索引,其中序列的编号方法是第一个元素编号为0,以此类推。用负数来表示是倒数第一个的编号为-1,负数编号的最后一位元素不能为0,要是为0 的话就无法确定是正数编号中的第一个还是负数编号中的第一个了。

 

    ------索引

序列包括字符串正数等,并且没有序列中的元素都有一个编号,即索引,索引都是从0开始递增的。

1

2

3

>>> txt = 'python'

>>> txt[2]

't'

字符串就是由字符组成的序列,索引的0指向字符p

 

    ------分片

如果想要访问序列中的一个范围内的元素,那么就可以用分片来实现。分片的书写方式是以‘:’隔开的两个索引来实现,两个索引表示的就是分片的边界。如[5:8],索引5所代表的是分片的边界,属于分片的第一位,8表示的是分片片的剩余部分的第一位元素(不包括在分片内)。

例子:通过分片访问元素的范围,从裂变开始元素计数【正索引】

1

2

3

4

5

>>> nembers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

>>> nembers[1:8]

[2345678]

>>> nembers[0:1]

[1]

例子:通过分片访问元素的范围,从列表结尾元素计数【负索引】

1

2

3

>>> nembers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

>>> nembers[-7:-2]

[1011121314]

注意:通过负索引来访问列表范围需要的注意的是,最左边的索引要小于最最右边的索引,即最左边的索引指向的元素出现的时间要早于最右边的索引指向的元素。不然的话,结果就会出现一个空序列了。

如:

1

2

3

>>> nembers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

>>> nembers[-3:-6]

[]

 

例子:通过分片访问元素的范围中有序列的第一个元素(0)或者最后一个元素(-1)

如果指定分范围中的索引有第一个元素或者最后一个元素,那么只需要空左边或者右边的索引就OK了。

1

2

3

4

5

6

7

>>> nembers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

>>> nembers[:5]

[12345]

>>> nembers[-5:]

[1213141516]

>>> nembers[:]

[12345678910111213141516]

注:当索引两边都空时,那么现实的是整个序列的内容。

 

    ------步长

上述的分片中,所用的索引的步长都是“1”。那么当步长大于1的时候呢?这是正数步长,那么当步长为负数的时候呢? [1:5]这样的分片中步长为1,没有表示出来,这是隐式设置。[1:5:2]这样的分片中的步长为2,表示出来了,这是显示设置。

1

2

3

>>> nembers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]

>>> nembers[1:9:2]

[2468]

注:步长不能为0,不论步长是正数还是负数,都是从序列开始元素开始的,步长为正数时,序列从左到右,步长为负数时,序列从右到左。

 

    ------序列运算

序列连接(+)操作

1

2

3

4

>>> [1,2,3,4+ [5,6,7,8]

[12345678]

>>> ['1'+ [2]

['1'2]

 

例子:测试两种不同类型的序列相连接

1

2

3

4

5

>>> [1,2,3+ 'shuzi'

Traceback (most recent call last):

  File "<pyshell#34>", line 1in <module>

    [1,2,3+ 'shuzi'

TypeError: can only concatenate list (not "str") to list

解析:相连接在一起的必须都是序列,而且序列的类型是要相同的。如上述例子列表和字符串是不能连接在一起的。

 

序列乘法(*)操作

   序列乘法的操作不是连接在一起的,而是将原来的序列进行重复x次

例子:

1

2

>>> 'My first language is python,' * 2

'My first language is python,My first language is python,'

 

None,空列表和初始化

空列表是指在中括号[]中不插入任何的值。如果要想在这个空列表中占用一些元素空间却不包括任何内容就需要用到None。None是python的内建值,他意味着序列中没有任何值,因此只需要将[None]*x 就OK了。

例子:创建一个具有100个元素的空序列

1

2

3

>>> source = [None* 100

>>> source

[NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone]

    ------成员资格检验--in

有时候,当序列中的元素过多的时候,想要查看序列中是否有某个元素的时候,就可以用in运算符来检查序列中是否有这个元素。成员资格检验运算符in在检验的时候,如果序列中有这个元素的时候就会返回一个布尔值(True,False)。

例子:

1

2

3

4

5

>>> txt = ['yuer','doudou',88,99]

>>> 99 in txt

True

>>> 'baidu' in txt

False

    ------内建函数-len-max-min)

len函数返回的是序列中所包含元素的数量,max和min函数返回的序列中的最大值和最小值。

例子:

1

2

3

4

5

6

7

>>> txt = [1,2,3,4,5,6,7,8,9]

>>> len(txt)

9

>>> max(txt)

9

>>> min(txt)

1

注释:调用内建函数时,序列中的元素只能是数字,不能是字符串,有字符串的话,否则会报错。

如:

1

2

3

4

5

6

>>> txt = [1,2,3,'yu']

>>> max(txt)

Traceback (most recent call last):

  File "<pyshell#28>", line 1in <module>

    max(txt)

TypeError: unorderable types: str() > int()

2:列表操作

    列表listpython中作用很强在,列表可以包含不同类型的数据对像,同时它是一个有序的集合。所有序列能用到的标准操作方法,列表也都可以使用。比如切片、索引等,python的列表是可变数据类型,它支持添加、修改、删除等操作

 

列表分为三种

-- 普通列表

-- 混合列表

-- 空的列表

1:普通列表

1

2

3

4

5

6

7

8

>>> member = [1,2,3,4,5]

>>> member

[12345]

>>> len(member)

5

>>> next = ['2','3']

>>> next

['2''3']

2:混合列表

1

2

3

>>> nember = ['I love you','3',3,3.9,3e-9]

>>> nember

['I love you''3'33.93e-09]

 

列表可以包含不同类型对像,也支持嵌套:

例如a = ['a',567,['adc',4,],(1,2)]

这个列表中就包含了字符串、整型、元组这些元素,同时还嵌套了一个列表。

3:空的列表

   列表是有序的,可以通过python list下标来修改特定位置的值。列表的修改操作,也可以把它看成是特定位置重新赋值的操作。

 

例子:

1

2

3

>>> empty = []

>>> empty

[]

  ------list函数

1

2

>>> list('python')

['p''y''t''h''o''n']

  ------改变列表

例子:

1

2

3

4

5

6

>>> txt = [1,2,3,4,5,6]

>>> del txt

>>> txt = [1,2,3,4,5,7]

>>> txt[5= 6

>>> txt

[123456]

注:改变列表就是替换列表中的元素

   ------删除元素

例子:

1

2

3

4

>>> txt = [1,2,3,4,5,6]

>>> del txt[5]

>>> txt

[12345]

   ------分片赋值

例子:

1

2

3

4

5

6

>>> txt = list('123456')

>>> txt

['1''2''3''4''5''6']

>>> txt[2:] = list ('python')

>>> txt

['1''2''p''y''t''h''o''n']

 

3:列表方法

   ------append 在列表末尾添加新的元素

例子:

1

2

3

4

5

6

7

8

>>> member.append(3)

>>> member

[123453]

>>> len (member)

6

>>> nember.append('3.4e')

>>> nember

['I love you''3'33.93e-09'3.4e']

 

   ------count 统计某个元素在列表中出现的次数

1

2

3

4

5

>>> txt = ['a','b','c','d','e','f','g','a','b','c','e','f','g',1,2,3,1,2,5,]

>>> txt.count('a')

2

>>> txt.count(1)

2

   ------extend 在列表末尾一次性追加多个元素

1

2

3

>>> next.extend( [ '5',6e-3 ] )

>>> next

['2''3''5'0.006]

 

   ------index 从列表中找出某个元素第一个匹配项的索引位置

例子:

1

2

3

4

5

6

7

8

9

10

>>> txt = ['yuer','mobanche','1',2,3]

>>> txt.index('yuer')

0

>>> txt.index (3)

4

>>> txt.index (0)

Traceback (most recent call last):

  File "<pyshell#86>", line 1in <module>

    txt.index (0)

ValueError: 0 is not in list

注:整数0 ,没有呢在列表中,措意会报错

 

   -----insert 将对象插入到列表中的某一个索引位置

例子:向列表中添加元素放到第一位

1

2

3

>>> next.insert(0,'小鱼儿')

>>> next

['小鱼儿''2''3''5'0.006]

注释:用insert表示的是在此位置上进行插入一个新的值。此位置上之前的值会移到下一个下标

另一种方法

1

2

3

>>> next[0= '豆豆'

>>> next

['豆豆''2''3''5'0.006]

注释:这里直接在中括号中写入小标,是表示在此下标中替换一个新的值,次下标之前的值就没有了。

   ------pop 默认从列表中最后一个移除元素

例子:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

>>> xue = 5

>>> title = ['5',3,xue,5e+2]

>>> title.pop()  #默认从最后一个元素删除

500.0

>>> title

['5'35]

 

>>> title = ['5',3,xue,5e+2]

>>> title.pop(-2)

5

>>> title

['5'3500.0]

>>> title.pop(1)

3

>>> title

['5'500.0]

 

   ------remove 移除列表中某个值的第一个匹配项

例子:

1

2

3

4

5

>>> xue = 5

>>> title = ['5',3,xue,5e+2]

>>> title.remove(3)

>>> title

['5'5500.0]

注:移除的时候,直接写列表中的元素,不是写列表中元素的索引

   ------reverse 将列表中的元素反向存放

例子:

1

2

3

4

>>> txt = ['mobanxhe',123,5]

>>> txt.reverse ()

>>> txt

[5123'mobanxhe']

   ------sort 在原位置对列表进行排序

例子:

1

2

3

4

>>> txt = [45,6,8,85,5]

>>> txt.sort()

>>> txt

[5684585]

登录乐搏学院官网http://www.learnbo.com/

或关注我们的官方微博微信,还有更多惊喜哦~

本文出自 “末班车” 博客,请务必保留此出处http://blxueyuan.blog.51cto.com/9673381/1873010

转载于:https://my.oschina.net/learnbo/blog/968305

python中列表操作相关推荐

  1. 【Python】Python实战从入门到精通之二 -- 教你使用Python中列表操作

    本文是Python实战–从入门到精通系列的第二篇文章: [Python]Python实战从入门到精通之一 – 教你深入理解Python中的变量和数据类型 Python实战从入门到精通之二 – 教你使用 ...

  2. 四、Python第四课——Python中列表及其操作(增删改查)

    目录 一.Python中的列表 1.列表的定义和赋值 2.列表的使用 二.列表的"增删改查" 1.列表中元素的增加 A.在列表尾添加元素 B.在列表中插入元素 2.列表中" ...

  3. Python中列表及其操作

    文章目录 前言 一.列表简介 二.访问列表元素 三.修改.添加和删除列表元素 1.修改列表元素 2.在列表中添加元素 3.从列表中删除元素 四.对列表元素排序 五.确定列表长度 六.遍历列表 七.创建 ...

  4. Python中列表和字符串的反转

    要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...

  5. 手写Python中列表和字符串的反转

    要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...

  6. python采集修改原创_python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改...

    python中ftp操作: ftp=FTP() #设置变量 ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 ftp.connect("IP"," ...

  7. python中列表的sort方法_python中列表的sort方法使用详解

    内容简介:python中列表的sort方法使用详解 一.基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的. 排序,数字.字符 ...

  8. python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改

    全栈工程师开发手册 (作者:栾鹏) python教程全解 python中ftp操作: ftp=FTP() #设置变量 ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 ftp ...

  9. Python中列表 list 的加减乘除运算总结

    Python中列表运算总结 列表的创建及基本用法 列表的 + - × ÷ Python中列表list是一种常用(最基本)的数据类型,其四则运算和MATLAB.numpy等数据结构不太一样. 列表的创建 ...

最新文章

  1. nvidia share有什么用_NVIDIA共享无法在Win10上运行或响应
  2. 关于鼠标移动太快导致moseleave事件不触发的问题
  3. 【python之路8】python基本数据类型(二)
  4. getSlotFromBufferLocked: unknown buffer: 0xf3d94ca0
  5. 阿里云java mysql环境_阿里云搭建centos java mysql nginx环境
  6. Java继承 implements 与 extends 总结
  7. spring boot 处理自定义注解
  8. tensorflow实现残差网络(mnist数据集)
  9. mysql数据库优化 分析工具 性能瓶颈
  10. 开源H5盲盒商城源码系统4.0-vue+TP5php框架开发开源网站
  11. 浏览器报ScriptResource.axd异常
  12. 技术人如何才能做好绩效管理提升团队绩效?
  13. js怎么实现ftp上传文件到服务器,js ftp上传文件到服务器上
  14. 华硕无线网卡测试软件,高端便携无线网卡来了 华硕USB-AC68首测
  15. 宋星:误读数据等于自杀
  16. 2020,感恩陪伴;2021,指令集愿与您同行
  17. 理解SVM ——入门SVM和代码实现
  18. 《一本书读懂大数据营销 玩透大数据营销 创造网络营销奇迹》pdf下载 百度云
  19. Trends, Limitations and Open Challenges inAutomatic Readability Assessment Research翻译
  20. Photoshop Elements2023(64bit)

热门文章

  1. java 输入怎么写_java我要怎么写如果输入6是输出是122333444455
  2. php模板怎么导入数据类型,smarty模板引擎之分配数据类型,smarty模板数据类型_PHP教程...
  3. mysql内核测试,MySQL 5.7内核复制中的一个小坑
  4. 学术诚信的重要性_关于学术诚信
  5. yum php mysql apache,CentOS yum 安装 Apache + PHP + MySQL
  6. jdba访问mysql_Java中JDBC操作数据库的步骤
  7. linux iphone文件,在linux下生成iphone所需要的视频和音频文件的方法总结
  8. koa 接口返回数据_koa+node基础搭建到实现api接口
  9. linux简单好玩的命令,有趣的Linux命令行玩法 cal
  10. PHP与前端协作模式的理解