list列表切片方法汇总
python为list列表提供了强大的切片功能,下面是一些常见功能的汇总
"""
使用模式: [start:end:step]
其中start表示切片开始的位置,默认是0
end表示切片截止的位置(不包含),默认是列表长度
step表示切片的步长,默认是1
当start是0时,可以省略;当end是列表的长度时,可以省略.
当step是1时,也可以省略,并且省略步长时可以同时省略最后一个冒号.
此外,当step为负数时,表示反向切片,这时start值应该比end值大.
注意:切片操作创建了一个新的列表.
""" alist = [1, 2, 3, 4, 5, 6, 7, 8, 9] print(alist[::]) # 返回包含原列表所有元素的新列表
print(alist[::-1]) # 返回原列表的一个逆序列表
print(alist[::2]) # [1, 3, 5, 7, 9] .取列表下标偶数位元素
print(alist[1::2]) # [2, 4, 6, 8] 取列表下标奇数位元素
print(alist[3:6]) # [4, 5, 6] #取列表中下标3到6的值,步长是1
print(alist[3:6:2]) # [4, 6] #取列表中下标3到6的值,步长是2 print(alist[:10]) # [1, 2, 3, 4, 5, 6, 7, 8, 9] . end大于列表长度时,取列表中所有元素,省略了步长1.
print(alist[10:]) # [] . 表示从列表的第10位开始取,一直取到列表结果,步长是1. alist[len(alist):] = [10] # 在列表的未尾添加一个元素
print(alist) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] alist[:0] = [-1,0] # 在列表的头部插入元素. alist[:0] 相当于 alist[0:0] 再相当于 alist[0:0:1]
print(alist) #[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] alist[5:5] = [-6] # 把列表的第6个位置替换成-6. 相当于alist[5:5:1] = [-6]
print(alist) #[-1, 0, 1, 2, 3, -6, 4, 5, 6, 7, 8, 9, 10] alist = [1, 2, 3, 4, 5, 6, 7, 8, 9]
alist[:3] = ['A','B','C','D'] # 把alist的前3个元素换成['A','B','C','D']
print(alist) #['A', 'B', 'C', 'D', 4, 5, 6, 7, 8, 9] alist[3:] = ['E','F','G'] # 把列表第3个元素之后的元素替换成['E','F','G']
print(alist) # ['A', 'B', 'C', 'E', 'F', 'G'] alist = [1, 2, 3, 4, 5, 6]
alist[::2] = [0]*3 # 替换列表下标是偶数的前三个元素,注意使用该方法时,列表下标是偶数的元素个数必须与后面替换的元素个数相等,否则报错
print(alist) #[0, 2, 0, 4, 0, 6] alist[::2] = ['a','b','c'] # 跟上面一样的道理,只是替换的内容不一样
print(alist) # ['a', 2, 'b', 4, 'c', 6] alist = [1, 2, 3, 4, 5, 6]
alist[:3] = [] # 删除列表中前3个元素
print(alist) # [4, 5, 6] alist = [1, 2, 3, 4, 5, 6]
del alist[:3] # 使用del关键字删除列表前3个元素
print(alist) #[4, 5, 6] alist = [1, 2, 3, 4, 5, 6]
del alist[::2] # 删除列表元素,下标是偶数位的元素
print(alist) #[2, 4, 6]
list列表切片方法汇总的更多相关文章
- Python列表排序方法汇总,超详细!
1. 修改原列表,不创建新列表的排序 1 a = [3, 2, 8, 4, 6] 2 print(id(a)) # 2180873605704 3 a.sort() # 默认升序 4 print(a) ...
- 编程中遇到的Python错误和解决方法汇总整理
这篇文章主要介绍了自己编程中遇到的Python错误和解决方法汇总整理,本文收集整理了较多的案例,需要的朋友可以参考下 开个贴,用于记录平时经常碰到的Python的错误同时对导致错误的原因进行分析, ...
- Python学习总结3:元组、列表的操作汇总
参考博客:http://www.cnblogs.com/QG-whz/p/4782809.html 1. 是否可变 元组:用()或tuple函数定义,不可变(元素的值以及整个元组): 列表:用 [] ...
- jquery常用函数与方法汇总
1.delay(duration,[queueName]) 设置一个延时来推迟执行队列中之后的项目. jQuery1.4新增.用于将队列中的函数延时执行.他既可以推迟动画队列的执行,也可以用于自定义队 ...
- Python 列表排序方法reverse、sort、sorted详解
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
- python之列表及其方法---整理集
列表类,类名是list 通过list类创建对象,使用中括号 列表特性: 使用中括号括起来 中间用逗号分隔每个元素 元素可以是数字.字符串.布尔值.列表 列表中可以嵌套列表 列表中每个元素的下标从0开始 ...
- python 列表排序方法reverse、sort、sorted基础篇
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
- python列表排序方法reverse、sort、sorted
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
- python 输出所有大小写字母, range()以及列表切片
所以在写的时候,只要把它们的ASCII列出,并转化成字符型chr 即可. print [chr(i) for i in range(65,91)]#所有大写字母 print [chr(i) for i ...
随机推荐
- 自定义控件 - 流式布局:TagFlowLayout
在项目中需要用到流式布局的样式,此文学习鸿洋大神的FlowLayout控件,学习使用一下.出自 http://blog.csdn.net/lmj623565791/article/details/38 ...
- 三十五、robotframework中怎么将100转化成100.00
1.将100转化成100.00
- 015-elasticsearch5.4.3【五】-搜索API【四】Joining 多文档查询、GEO查询、moreLikeThisQuery、script脚本查询、span跨度查询
一.Joining 多文档查询 joining query 像Elasticsearch这样的分布式系统中执行完整的SQL样式连接非常昂贵.相反,Elasticsearch提供两种形式的连接,旨在水平 ...
- Java ——方法
本节重点思维导图 方法的定义 例题:1!+2!+3!+4!+…..+15!=? public class Demo { public static void main(String[] args) ...
- 远程访问其他主机的Mysql(Ubuntu)
远程访问其他主机的Mysql 首先:被访问的电脑应该把防火墙关掉, sudo ufw disable 然后去etc/mysql sudo gedit my.cnf 将bind-address注解掉 由 ...
- ToolProvider.getSystemJavaCompiler()方法空指针的排坑
起因: 我在做一个编译Java代码的功能,基本写的差不多了,我就想把它打包部署到我服务器上跑一跑,但是这不做不知道,一做果然就出了问题.我在IDEA上跑一点问题都没有,但是打包成Jar后,后台就显示空 ...
- linux系统系统调优之----内核优化
主要是指在Linux系统中针对服务应用而进行的系统内核参数调整,优化没有的标准, 根据实际需求优化才是最合适的. 1)编辑内核配置文件 2)参数及简单说明 3)生效配置 1)编辑内核配置文件 vim ...
- C#Exception 追踪异常位置
1:在编写软件时,保护关键位置的代码正常运行,要对这位置进行异常处理try catch private void StartTCPServer() { try { ........//我们要确保知道这 ...
- PL/SQL Developer工具
安装好Oracle以后我们发现在控制台来操作数据库很繁琐,而且也不方便阅读.所以,我们就要用到PL/SQL Developer工具,以达到能更好的操作数据库的目的. PL/SQL Developer简 ...
- 2019 Multi-University Training Contest 7 - 1006 - Snowy Smile - 线段树
http://acm.hdu.edu.cn/showproblem.php?pid=6638 偷学一波潘哥的二维离散化和线段树维护最大子段和. 思路是枚举上下边界,但是不需要从左到右用最大子段和dp. ...