当前位置: 首页 > 面试题库 >

Python逆向切片

汪和悌
2023-03-14
问题内容

我的问题的一个具体示例是“在此示例中如何获得‘3210’?”

>>> foo = '0123456'
>>> foo[0:4]
'0123'
>>> foo[::-1]
'6543210'
>>> foo[4:0:-1] # I was shooting for '3210' but made a fencepost error, that's fine, but...
'4321'
>>> foo[3:-1:-1] # How can I get '3210'?
''
>>> foo[3:0:-1]
'321'

我可以写foo [4:0:-1],foo [5:1:-1]等并得到我期望的结果,这似乎很奇怪,但是无法编写切片以便得到‘3210 ‘。

一个临时的方法是foo [0:4] [::-1],但这会在进程中创建两个字符串对象。我实际上将执行此操作数十亿次,因此每个字符串操作都非常昂贵。

我一定想念一些愚蠢而轻松的事情。谢谢你的帮助!


问题答案:

只需排除终止范围索引

>>> foo[3::-1]
'3210'

具有讽刺意味的是,关于唯一的选择,我认为您没有尝试过。



 类似资料:
  • 逆向工程 是模型其中一个主要功能。这功能让你加载现有的数据库结构以创建新的图表。它支持导入 MySQL、 PostgreSQL、Oracle、SQLite、SQL Server 或 MariaDB 数据库、模式、表或视图。 Navicat 提供一个步骤的向导让你完成任务: 选择 工具 -> 从数据库导入。 选择连接。 选择你要导入的数据库、模式或表。 点击 开始。 你也可以简单地在 Navicat

  • 逆向工程是模型的其中一个主要功能。这功能让你加载现有的数据库结构以创建新的图表。它支持导入数据库、模式、表或视图。 Navicat 提供一个向导,一步一步指导你完成任务: 选择“文件”->“从数据库导入”。 选择一个连接。 选择你要导入的数据库、模式、表或视图。 点击“开始”。 你也可以简单地在 Navicat 主窗口使用逆向工程创建一个新模型。右击一个已打开的数据库或模式、表或视图并在弹出式菜单

  • 逆向工程是模型的其中一个主要功能。这功能让你加载现有的数据库结构以创建新的图表。它支持导入数据库、模式、表或视图。 Navicat 提供一个向导,一步一步指导你完成任务: 选择“文件”->“从数据库导入”。 选择一个连接。 选择你要导入的数据库、模式、表或视图。 点击“开始”。 你也可以简单地在 Navicat 主窗口使用逆向工程创建一个新模型。按住 Control 键并点按一个已打开的数据库或模

  • 逆向工程是模型的其中一个主要功能。这功能让你加载现有的数据库结构以创建新的图表。它支持导入数据库、模式、表或视图。 Navicat 提供一个向导,一步一步指导你完成任务: 选择“文件”->“从数据库导入”。 选择一个连接。 选择你要导入的数据库、模式、表或视图。 点击“开始”。 你也可以简单地在 Navicat 主窗口使用逆向工程创建一个新模型。右击一个已打开的数据库或模式、表或视图并在弹出式菜单

  • 本文向大家介绍如何在逆时针方向设置JavaFX PieChart的切片?,包括了如何在逆时针方向设置JavaFX PieChart的切片?的使用技巧和注意事项,需要的朋友参考一下 改变切片的方向 PieChart的第一个切片开始的角度称为开始角度,您可以使用setStartAngle()方法设置此值(默认为0)。 饼图类提供被称为属性(布尔值)顺时针指定当前饼图的切片是否在从开始角度沿顺时针方向(

  • 主要内容:1. 下载jar包,2. 创建数据表,3. 创建项目Mybatis 提供了一个逆向工程工具,该工具可以根据数据表自动生成针对单表的 po 类、mapper 映射文件和 mapper 接口。大大缩减了开发时间,可以让开发人员将更多的精力放在繁杂的业务逻辑上。 之所以强调单表两个字,是因为 MyBatis 逆向工程生成的 Mapper 中的操作都是针对单表的。在大型项目中,很少有复杂的多表关联查询,所以该工具作用还是很大的。 1. 下载jar包 jar