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

通过Python中的切片列表分配值的紧凑方法

步联
2023-03-14
问题内容

我有以下清单

bar = ['a','b','c','x','y','z']

我想要做的就是分配1,第4和第5的值barv1,v2,v3,有没有更紧凑的方式比这做的事:

v1, v2, v3 = [bar[0], bar[3], bar[4]]

因为在Perl中,您可以执行以下操作:

my($v1, $v2, $v3) = @bar[0,3,4];

问题答案:

您可以使用operator.itemgetter

>>> from operator import itemgetter
>>> bar = ['a','b','c','x','y','z']
>>> itemgetter(0, 3, 4)(bar)
('a', 'x', 'y')

因此,对于您的示例,您将执行以下操作:

>>> v1, v2, v3 = itemgetter(0, 3, 4)(bar)


 类似资料:
  • 问题内容: 为什么不起作用? 问题答案: 创建所选子列表的副本,该副本由反转。这不会更改原始列表。切片Python列表始终会创建副本-您可以使用 复制整个列表。

  • 问题内容: 我有一个数据框。 我想选择在所有指数是 不是 在列表中, 现在,我使用列表理解来创建所需的标签以进行切片。 工作正常,但如果我经常需要这样做可能会很笨拙。 有一个更好的方法吗? 问题答案: 在索引上使用并反转布尔索引以执行标签选择:

  • 可能重复: 替换python中的switch语句? 假设我在Python中有一个列表: 列表=('ADD'、'SUB'、'PUSH'、'POP') 我想根据输入运行一个函数,该输入可以是列表中的任何值。 没有为中的每个元素编写一个开关用例语句,有没有更紧凑的编写方法? 我的理由是,该名单今后会不断增加。

  • 问题内容: 我需要具有以下行为的列表 尽管它可以通过字典“模拟”,但并不完全相同。numpy数组可以以这种方式运行,但是我不想为这样的事情导入整个numpy。在自己编写代码之前,请问标准库中是否存在类似的内容。 问题答案: 以下是传递给定示例的最少代码(进行必要的调整:您期望使用怪异的空格和引号,在没有声明的情况下在提示符下显示“无”等): 我想您会想要更多(支持负索引,切片等),但这是您所有示例

  • 本文向大家介绍python通过索引遍历列表的方法,包括了python通过索引遍历列表的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python通过索引遍历列表的方法。分享给大家供大家参考。具体如下: python中我们可以通过for循环来遍历列表: 如果希望遍历列表的同时得到元素的索引号,可以使用下面的代码: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 假设我有一些Python列表,其中包含N个元素。单个元素可以通过使用进行索引,其中是所需元素的索引。然而,Python列表也可以是索引,其中一个从列表中的“片” ,以期望。切片大小为N的列表的Big-O(最坏情况)表示法是什么? 就个人而言,如果我要对“切片器”进行编码,我会从迭代到,生成一个新列表并返回它,表示O(N),这是Python的方式吗? 谢谢, 问题答案: 获取切片为O()