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

zip(* [iter(s)] * n)在Python中如何工作?

高山
2023-03-14
问题内容
s = [1,2,3,4,5,6,7,8,9]
n = 3

zip(*[iter(s)]*n) # returns [(1,2,3),(4,5,6),(7,8,9)]

zip(*[iter(s)]*n)工作如何?如果用更冗长的代码编写,它将是什么样?


问题答案:

iter()是序列上的迭代器。[x] * n产生一个包含n数量的列表x,即一个长度的列表n,其中每个元素都是x。*arg将序列解压缩为函数调用的参数。因此,你要将3次相同的迭代器传递给zip(),并且每次都会从迭代器中提取一个项目。

x = iter([1,2,3,4,5,6,7,8,9])
print zip(x, x, x)


 类似资料:
  • 本文向大家介绍Python-iter()方法,包括了Python-iter()方法的使用技巧和注意事项,需要的朋友参考一下 Python基本上创建了一个迭代器对象,该对象可用于迭代可迭代对象。让我们尝试了解什么是迭代器和可迭代对象。迭代器-迭代器是一个对象,其中包含可在迭代对象上迭代的可数数量的值。可迭代的:可迭代的基本上是数据类型的集合,例如列表,元组或字符串。 语法: iter(对象,前哨)

  • 问题内容: 我正在使用带有Hibernate的MS SQL Server 2008。我的问题是Hibernate如何实现 采取以下简单方案。 如果我有一个返回100行的查询,并且如果我将1传递给,这会影响SQL Server本身返回的结果(就像运行一条语句一样),还是Hibernate首先获取所有结果(在这种情况下为所有100行)并挑选最高的自己? 我问的原因是,当行数开始增加时,它将出现巨大的性

  • 问题内容: 我想知道rstrip和lstrip如何在python中工作。说,如果我有一个字符串 剥离单词如何工作? 理想情况下,输出应该是“ thist”(对于第一种情况)和“ that”(对于第二种情况)对吗? 还是像正则表达式一样,匹配每个字符,以及最后看到的哪一个字符都会删除(对于第三种情况)? 注意:我不是在寻找替换,我只是想知道从字符串中删除子字符串时,strip的工作方式。 问题答案:

  • 本文向大家介绍Python中zip函数如何使用,包括了Python中zip函数如何使用的使用技巧和注意事项,需要的朋友参考一下 介绍 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。 ps. 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。 例子 zip函数接受任意多个(包括0个

  • 这是我不懂的代码: 什么?通过对随机选择的进行简单的模拟,我得到了迭代,是平均值。 这是有道理的。 获得两个决策的两个位,是有道理的。

  • 我知道如何通过将两个函数作为输入并输出其合成函数来合成两个函数,但如何返回合成函数f(f(…f(x))?谢谢