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

复制列表中的元素

怀展
2023-03-14
问题内容

说我有这个

b = 3
l = [1, 2]

我想修改l,以便每个元素出现与b一样多的次数。以便:

l = [1, 1, 1, 2, 2, 2]

我用这个:

for x in l:
  for m in range(b):
    l.append(x)

但这导致了无限循环。任何帮助,将不胜感激。我希望你们给出想法而不是给我代码。谢谢。


问题答案:

我的2美分:

实现此目的的另一种方法也是利用可以在Python中乘以列表的事实。

>>> l = [1, 2, 3]
>>> [1, 2, 3] * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

对该sorted函数的简单调用可以对其进行排序

>>> b = 3    
>>> l = [1, 2]
>>> sorted(l * b)
[1, 1, 1, 2, 2, 2]


 类似资料:
  • 我有一个列表,其中包含以下元素: 和另一个对象,比如: 我有Element1的列表,并希望从Element1创建Elements2: 我正在寻找以更简单的方式执行此操作,也许使用 stream()。实现这一目标的最干净方法是什么?

  • 问题内容: 将所有值从表中的列复制到同一表中的另一列的最简单方法是什么? 问题答案: 使用单个语句(如果列具有相同的数据类型)

  • 我想要一个列表,它是列表元素列表的组合,例如:我的输入 输出应该是 非常感谢您的帮助。

  • 问题内容: 给出以下列表: 我想将[a]的每个元素重复其在[b]中的对应位置的编号,以产生此结果: 即0发生1次,5发生2次,1发生1次。 问题答案: 内容如下: -重复elem次 从两个列表中组成一个2元组的列表,将每个元素与另一个列表中的对应元素配对。这为您提供了用例中需要传递给的确切信息。 -将迭代器的结果列表展平为单个值列表。您既可以像我一样,也可以像马丁·彼得斯那样。

  • 用集合 list(set(l)) 用字典 l1 = ['b','c','d','b','c','a','a'] l2 = {}.fromkeys(l1).keys() print l2 用字典并保持顺序 l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) l2.sort(key=l1.index) print l2 列表推导式 l1 =

  • 我有一个熊猫数据框,其中一列由列表组成: 我想添加,例如,每个列表的第一个和最后一个索引。为此,我使用: 这分别作用于每一行,如果数据帧很大,这可能会非常密集。有没有办法将此操作矢量化?