如何提取数组中的多个切片?

新手上路,请多包涵

我需要从数组中的多个位置提取数据。

一个简单的数组是:-

 listing = (4, 22, 24, 34, 46, 56)

我熟悉切片。例如:-

 listing[0:3]

会给我:-

 (4, 22, 24)

但是我无法取出多个切片。例如:-

 listing[0:3, 4:5]

给我

TypeError: tuple indices must be integers not tuples

尽管搜索了两本 Python 书籍和互联网,但我无法确定要使用的语法。

原文由 OldSteve 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 302
2 个回答

您可以切片两次并加入它们。

 listing[0:3] + listing[4:5]

原文由 alex 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果你有你需要的切片的索引号,你可以用一个包含在列表中的循环来获取它们。

 index_nums = [0,2,4]
output = [listing[val] for val in index_nums]

这将返回 [4,24,46]

原文由 nrc 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏