Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么下面这种情况下的切片运算符在python中不起作用?

为什么下面这种情况下的切片运算符在python中不起作用?
EN

Stack Overflow用户
提问于 2019-05-21 14:55:38
回答 1查看 106关注 0票数 2

我正在看一段python视频,根据讲师的切片运算符逻辑,有一种情况不起作用。

代码语言:javascript
运行
AI代码解释
复制
step value can be either +ve or -ve
-----------------------------------------
if +ve then it should be forward direction (L to R)
if -ve then it should be backward direction(R to L)

if +ve forward direction from begin to end-1
if -ve backward direction from begin to end + 1

in forward direction
-------------------------------
default : begin : 0
default : end : length of string
default step : 1

in backward direction
---------------------------------
default begin : -1
default end : -(len(string) + 1)

我尝试在python idle上运行satement,得到以下结果:

代码语言:javascript
运行
AI代码解释
复制
>>> x = '0123456789'
>>> x[2:-1:-1]
''
>>> x[2:0:-1]
'21'

根据规则,我应该得到'210'的结果,但我得到的是''

EN

回答 1

Stack Overflow用户

发布于 2019-05-21 15:00:20

索引2:-1:-1将扩展到2:9:-1。负的开始或停止索引总是扩展到len(sequence) + indexlen('0123456789') + (-1)为9。不能以-1的步长从2到9,因此结果为空。

取而代之的是,使用2::-1一个空的(或None)停止索引意味着“全部抓取”。当strep大小为负值时,空停止索引的默认值是-len(sequence) - 1,它也是-(len(sequence) + 1),以抵消停止索引始终是独占的事实。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56241070

复制
相关文章
为什么 strace 在 Docker 中不起作用?
在编辑“容器如何工作”爱好者杂志的能力页面时,我想试着解释一下为什么 strace 在 Docker 容器中无法工作。
用户8639654
2021/09/18
6.7K0
Python 的切片为什么不会索引越界?
切片(slice)是 Python 中一种很有特色的特性,在正式开始之前,我们先来复习一下关于切片的知识吧。
Python猫
2021/12/20
1.6K0
Python 的切片为什么不会索引越界?
在PowerBI的切片器中搜索
在制作PowerBI报告时,一般来说,我们都会创建一些切片器。为了节省空间,一般情况下尤其是类目比较多的时候,大多采用下拉式的:
陈学谦
2020/06/18
12.5K0
List.append() 在 Python 中不起作用,该怎么解决?
Python 是一种强大而灵活的编程语言,它提供了许多方便的数据结构和操作方法,其中之一就是列表(List)。列表是一个有序的集合,可以包含不同类型的元素,并且可以进行添加、删除和修改等操作。在 Python 中,我们通常使用 List.append() 方法向列表末尾添加元素。然而,在某些情况下,你可能会遇到 List.append() 方法不起作用的问题。本文将详细讨论这个问题并提供解决方法。
网络技术联盟站
2023/06/01
3K0
Python中list的切片操作
版权声明:博客文章都是作者辛苦整理的,转载请注明出处,谢谢! https://blog.csdn.net/Quincuntial/article/details/89674803
Tyan
2019/05/25
9540
Python中的引用和切片
当你创建了一个对象并将其分配给某个变量时,变量只会查阅(Refer)某个对象,并且它也 不会代表对象本身。也就是说,变量名只是指向你计算机内存中存储了相应对象的那一部 分。这叫作将名称绑定(Binding)给那一个对象。 一般来说,你不需要去关心这个,不过由于这一引用操作困难会产生某些微妙的效果,这是 需要你注意的:
benym
2022/07/14
7600
【说站】python切片运算符和slice()的关系
1、切片运算符[]实际上在代码中与slice()使用:符号的对象一起使用,仅在[]内有效。
很酷的站长
2022/11/24
2870
【说站】python切片运算符和slice()的关系
在Python中关系运算符中,表示“不等于”(python的逻辑运算符)
Python not equal operator returns True if two variables are of same type and have different values, if the values are same then it returns False.
全栈程序员站长
2022/08/02
1.7K0
【Python】掌握Python中的索引和切片
在Python中,像字符串或列表这样的有序序列的元素可以通过它们的索引单独访问。这可以通过提供我们希望从序列中提取的元素的数字索引来实现。另外,Python支持切片,这是一个特性,可以让我们提取原始sequence对象的子集。
黄博的机器学习圈子
2021/07/07
1.3K0
【Python】掌握Python中的索引和切片
Python 竞赛题-01-下面哪个不是 Python 的运算符?
准备收集一些有趣、流行、有一定挑战、长知识的 Python 题目,文章标题均以「Python 竞赛题」开头。
somenzz
2022/10/25
2570
Python 竞赛题-01-下面哪个不是 Python 的运算符?
Python中numpy数组切片
Python中符合切片并且常用的有:列表,字符串,元组。 下面那列表来说明,其他的也是一样的。 格式:[开头:结束:步长] 开头:当步长>0时,不写默认0。当步长<0时,不写默认-1 结束:当步长>0时,不写默认列表长度加一。当步长<0时,不写默认负的列表长度减一 步长:默认1,>0 是从左往右走,<0是从右往左走 遵循左闭右开原则,如:[0:9]等价于数学中的[0,9)
狼啸风云
2020/12/18
3.3K0
Python中numpy数组切片
为什么我的样式不起作用?
大概看一下代码,是有一个Parent的父组件,蓝底白字。还有一个Child的子组件,红底黑字。 那么实际渲染出的样式是什么样子的呢。如下图:
w候人兮猗
2020/07/01
4.4K0
Python中的序列以及切片的解释
有一种切片(Slicing)运算 符,它能够允许我们序列中的某段切片——也就是序列之中的一部分。
benym
2022/07/14
5170
在bootstrap中col-md-offset-* 偏移不起作用
在bootstrap中,使用col-md-offset-1、col-md-offset-2、col-md-offset-3、col-md-offset-4等来设置偏移量很常见,但最近就遇到一个问题了,在最新版的bootstrap4.5中,这个值不起作用了。
kirin
2020/10/27
12.8K1
python中的运算符
首先什么是运算符:简单来说 2+3,其中的 “+”,就是运算符。python 中有这么几个常用的运算符。
六小登登
2019/08/01
9740
在Python机器学习中如何索引、切片和重塑NumPy数组
在Python中,数据几乎被普遍表示为NumPy数组。
用户9527
2018/02/02
19.3K0
为什么在Python中,0.1 + 0.2 ≠ 0.3
为啥会有上述图片的现象呢?其实是由于float底层存储原理导致,下面听我娓娓道来。
刘早起
2020/10/23
1.4K0
为什么在Python中,0.1 + 0.2 ≠ 0.3
HashMap在并发情况下为什么造成死循环?
这个问题是在面试时常问的几个问题,一般在问这个问题之前会问Hashmap和HashTable的区别?面试者一般会回答:hashtable是线程安全的,hashmap是线程不安全的。
java之旅
2020/03/07
1.8K0
Python中运算符not、and、or
优先级 1. and 与 2. or 或 3. not 非 运算 要记住:数字中非零为真零为假;True 为真 False 为假。 or :与and相反,任意一个真即为真,同假才为假(因为要挨个查验是否有真,所以假的情况下值为最后一个假值,例如:0 or False 为 False;False or 0 则为0。真的情况下值为第一个真值,例如:0 or 1 or 2 为 1;0 or False or 2 为 2) and :与or相反,任意一个假即为假,同真为真(因为要挨个检查是否有假,所以真的情况下
py3study
2020/01/09
1.3K0
Python 中的神秘运算符
今天我们来讲讲 Python 里一个不为众人所知的运算符。你可能会觉得疑惑:还有我不知道的运算符?别急着下结论,先往下看看再说。
Crossin先生
2020/01/20
8630

相似问题

为什么'->‘运算符在指针指向指针的这种情况下不起作用?

4125

Python -为什么在这种情况下' is‘运算符返回true?

30

Python [x::y]切片运算符-为什么对我不起作用?

234

为什么我在Python中的负切片不起作用?

20

为什么这种排序方法在Python中不起作用?

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档