列表的切片操作时对其中的单个或者多个索引对应元素的操作,具有如下特点:

①、切片区间是左闭右开区间

②、切片的下标可以表示负数,-1表示倒数第一个数,-2表示倒数第二个数

③、默认步长是1,可增加第三个参数改变步长

④、步长是-1可以实现倒序切片

⑤、步长为正时,首末缺省下标分别为0和n;步长为负时,首末缺省下标分别为-1,-n-1

例如:把123456789变成987654321

# py面试:把123456789变成987654321
# 考查切片知识,倒叙每一个数
a=[1,2,3,4,5,6,7,8,9]
b=a[::-1]
print(b)

输出:[9,8,7,6,5,4,3,2,1]

-1表示倒序,b=a[::-1]等同于b=a[-1::-1],输出也是[987654321]

1、取前三个元素:b=a[0:3],前面那个0可以省略

a=[1,2,3,4,5,6,7,8,9]
b=a[0:3]
print(b)

输出:[1,2,3]

2、取出第1到3个元素:b=a[1:3]

a=[1,2,3,4,5,6,7,8,9]
b=a[1:3]
print(b)

输出:[2,3]

3、b=a[-1]是取出a中最后一个元素,同样也支持倒数切片

a=[1,2,3,4,5,6,7,8,9]
b=a[-2:-1]
print(b)

输出:[8]

4、从第一个开始,每两个取一个

a=[1,2,3,4,5,6,7,8,9]
b=a[0:10:2]
print(b)

输出:[1,3,5,7,9]

5、直接复制一个list:b=a[:]

a=[1,2,3,4,5,6,7,8,9]
b=a[:]
a[0]=100
print(b)

输出:[1,2,3,4,5,6,7,8,9]

b=a不是真实的拷贝:

a=[1,2,3,4,5,6,7,8,9]
b=a
a[0]=100
print(b)

输出:[100, 2, 3, 4, 5, 6, 7, 8, 9]

6、切片除了操作list,也可以操作tuple和str

# 操作tuple
a=(1,2,3,4,5,6,7,8,9)
b=a[:3]
print(b)

输出:(1, 2, 3)

# 操作str
a=""
b=a[:3]
print(b)

输出:123

python:列表切片知识的总结的更多相关文章

  1. python 列表切片

    列表切片是python语言独有的特征,大大方便了我们的编码. 首先,在介绍切片之前,必须要知道一个知识,就是python列表的读写,下标可以使用负数. insert,get,set 操作均可传入负数下 ...

  2. Python 列表切片陷阱:引用、复制与深复制

    Python 列表的切片和赋值操作很基础,之前也遇到过一些坑,以为自己很懂了.但今天刷 Codewars 时发现了一个更大的坑,故在此记录. Python 列表赋值:复制"值"还是 ...

  3. python列表切片

    Python中符合序列的有序序列都支持切片(slice),例如列表,字符串,元组. 格式:[start:end:step] start:起始索引,从0开始,-1表示结束 end:结束索引 step:步 ...

  4. Python列表切片详解([][:][::])

    Python切片是list的一项基本的功能,最近看到了一个程序,里面有这样一句类似的代码: a = list[::10] 1 不太明白两个冒号的意思就上网百度,发现大多数人写的博客中都没有提到这一个用 ...

  5. python 字符串切片知识巩固

    切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分).我们使用一对方括号.起始偏移量start.终止偏移量end 以及可选的步长step 来定义一个分片. 格式: [start:en ...

  6. python 列表切片之负数的含义代码示例

    a = list(range(10)) print(a[::]) #复制一个列表 print(a[::2]) #每隔2个取一次 print(a[::3]) #每隔3个取一次 print(a[::-1] ...

  7. python之列表切片(slice)

    使用索引获取列表的元素(随机读取) 列表元素支持用索引访问,正向索引从0开始 colors=["red","blue","green"] c ...

  8. python 输出所有大小写字母, range()以及列表切片

    所以在写的时候,只要把它们的ASCII列出,并转化成字符型chr 即可. print [chr(i) for i in range(65,91)]#所有大写字母 print [chr(i) for i ...

  9. Python列表的切片操作

    在Python列表中分片是一个很重要的操作,有以下几个注意的点: 切片时不包含最后一位,如下例子中,要取最后一位,从0开始算应该是到7就可以取,但是需要8才能取 2.      默认取值步长为1,即每 ...

随机推荐

  1. promise迷你书-读书笔记

    Promise三种类型 Constructor 使用Promise构造器来实例化一个promise对象 var promise = new Promise(function(resolve,rejec ...

  2. 查看chrome插件源码

    简介 想查看chrome插件的源码,就需要找到chrome插件安装的位置,接着再文件夹下查找此插件的id. mac cd ~/Library/Application Support/Google/Ch ...

  3. 曹工说mini-dubbo(1)--为了实践动态代理,我写了个简单的rpc框架

    相关背景及资源: 之前本来一直在写spring源码解析这块,如下,aop部分刚好写完.以前零散看过一些文章,知道rpc调用基本就是使用动态代理,比如rmi,dubbo,feign调用等.自己也就想着试 ...

  4. C#中无边框窗体拖动

    //定义一个bool变量标识是否拖动窗体 private bool isMove = false; //记录鼠标的位置 private Point point; 定义的变量 /// <summa ...

  5. 毕业设计——基于ZigBee的智能窗户控制系统的设计与实现

    题目:基于物联网的智能窗户控制系统的设计与实现 应用场景:突降大雨,家里没有关窗而进水:家中燃气泄漏,不能及时通风,威胁人身安全,存在火灾的隐患:家中窗户没关,让坏人有机可乘.长时间呆在人多.封闭的空 ...

  6. JDBC(三)----Spring JDBC(JDBCTemplate)

    ##  Spring  JDBC *  Spring框架对JDBC的简单封装.提供了一个JDBCTemplate对象简化JDBC的开发 1.步骤 1.导入jar包 2.创建JDBCTemplate对象 ...

  7. 题解 P1457 【城堡 The Castle】

    来讨论区大摇大摆地逛了一圈后,我发现竟然大家的代码 都很长 然而代码真的要写那么长吗 首先,来分析问题,1,2,4,8,这些数显然是有特点的,也许你已经想到了没错,它们都是2的次方数. 1是2的0次方 ...

  8. MySQL 教程--检视阅读

    MySQL 教程--检视阅读 准备:Windows 上安装 MySQL 教程地址,PHP语言基础 教程地址2 教程地址3,有讲数据库的备份和恢复 教程地址4,w3c.china,php基础,扩展阅读 ...

  9. RoBERTa

    2019-10-19 21:46:18 问题描述:谈谈对RoBERTa的理解. 问题求解: 在XLNet全面超越Bert后没多久,Facebook提出了RoBERTa(a Robustly Optim ...

  10. java获取近几天的日期

    最近在写接口的时候老遇见从mysql中获取近几天数据的需求,获取日期这块不是很熟,网上看了很多但是代码量都太大,还是问了下别人,写了三行代码就解决了,不多说 贴代码了 下面是我获取近十天,每天的日期: ...