Tag: 生成器

接受Markdown文档的静态网站生成器的build议?

我正在寻找接受Markdown文件作为input源代码的静态网站生成器。 我用Markdoc ,但看起来放弃了。 而且它不会复制源文档文件夹中的静态文件。 所以我正在安装docpad 。 无论如何,我想尝试其他的实现。 你能推荐一些像网站生成器好的实现吗?

如何克隆一个Python生成器对象?

考虑这种情况: #!/ usr / bin / env python # – * – 编码:utf-8 – * – import操作系统 walk = os.walk('/ home') 为根,目录,文件在步行: 对于dirs +文件中的path名: 打印os.path.join(根,path名) 为根,目录,文件在步行: 对于dirs +文件中的path名: 打印os.path.join(根,path名) 我知道这个例子有点多余,但是你应该考虑到我们需要多次使用相同的walk数据。 我有一个基准场景,使用相同的walk数据是强制性的,以获得有用的结果。 我已经尝试了walk2 = walk来克隆和使用在第二次迭代,但它没有奏效。 问题是…我可以如何复制它? 有没有可能? 先谢谢你。

如果range()是Python 3.3中的一个生成器,为什么我不能在一个范围内调用next()?

也许我已经成为networking上的错误信息的受害者,但我认为这更可能只是我误解了一些东西。 根据我迄今为止所了解的内容,range()是一个生成器,生成器可以用作迭代器。 但是,这个代码: myrange = range(10) print(next(myrange)) 给我这个错误: TypeError: 'range' object is not an iterator 我在这里错过了什么? 我期待这打印0,并提前在myrange下一个值。 我是Python的新手,所以请接受我对这个基本问题的道歉,但是在其他地方我找不到一个好的解释。

出于好奇:如何生成序列号? 提示,algorithm?

我想知道序列号生成器和validation器是如何工作的。 我的目标是生成一个只有数字和字母组成的序列号。 我喜欢编码作为一种爱好,不会称自己是一个专业程序员。 不过,我对这些有趣的function是如何在技术上起作用以扩大我的想法非常感兴趣。 任何提示,经验或书面algorithm表示赞赏。

数据生成器的SQL服务器?

我想收到有关SQL服务器可用的数据生成器的build议。 如果发布回复,请提供您认为重要的任何function。 我从来没有使用这样的应用程序,所以我正在寻求教育这个话题。 谢谢。 (我的目标是在每个表格中填入一个包含10,000个以上logging的数据库,以testing一个应用程序。)

generator.throw()的优点是什么?

PEP 342(通过增强型生成器的协程 throw()为生成器对象添加了一个throw()方法,允许调用者在生成器内引发exception(就像yieldexpression式抛出一样)。 我想知道这个function的用例是什么。

在Python中枚举()一个生成器

我想知道当我将生成器函数的结果传递给python的枚举()时会发生什么。 例: def veryBigHello(): i = 0 while i < 10000000: i += 1 yield "hello" numbered = enumerate(veryBigHello()) for i, word in numbered: print i, word 枚举是懒惰迭代的,还是它把所有东西都塞进了第一个呢? 我99.999%肯定它是懒惰的,所以我可以把它和发电机function完全一样,还是需要注意什么?

计算生成器/迭代器中项目数量的最简单方法是什么?

如果我想要一个迭代中的项目数量,而不关心这些元素本身,那么将会是什么样的pythonic方式呢? 现在,我会定义 def ilen(it): return sum(itertools.imap(lambda _: 1, it)) # or just map in Python 3 但我知道lambda已经接近被认为是有害的了,而lambda _: 1肯定不是很漂亮。 (用法是计算匹配正则expression式的文本文件中的行数,即grep -c 。)

如何outlookPython生成器中的一个元素?

我无法弄清楚如何在Python生成器中outlook一个元素。 只要我看,它走了。 这是我的意思: gen = iter([1,2,3]) next_value = gen.next() # okay, I looked forward and see that next_value = 1 # but now: list(gen) # is [2, 3] — the first value is gone! 这是一个更真实的例子: gen = element_generator() if gen.next_value() == 'STOP': quit_application() else: process(gen.next()) 任何人都可以帮我写一个发电机,你可以看一个元素向前?

如何循环发电机

怎样才能通过一个发电机循环? 我想过这个方法: gen = function_that_returns_a_generator(param1, param2) if gen: # in case the generator is null while True: try: print gen.next() except StopIteration: break 有更pythonic的方式?