相关疑难解决方法(0)

是否存在无限生成器的表达式?

是否存在可以产生无限元素的直接生成器表达式?

这是一个纯粹的理论问题.这里不需要"实用"的答案:)


例如,很容易制作一个有限的发电机:

my_gen = (0 for i in xrange(42))
Run Code Online (Sandbox Code Playgroud)

但是,要创建一个无限的,我需要使用伪造的函数"污染"我的命名空间:

def _my_gen():
    while True:
        yield 0
my_gen = _my_gen()
Run Code Online (Sandbox Code Playgroud)

在单独的文件中执行操作并在import以后执行操作不计算在内.


我也知道这就是itertools.repeat这个.我很好奇是否有一个没有它的单线解决方案.

python iterator generator infinite-loop

104
推荐指数
6
解决办法
5万
查看次数

如何将来自用户的许多输入存储在一个集合中

我的目标是以无序方式存储来自用户的许多输入。所以,我决定使用set. 我到目前为止的代码是:

a = input()
b = input()
c = input()
d = input()

all = a, b, c, d
print(set(all))
Run Code Online (Sandbox Code Playgroud)

但是,我不想像input()上面那样重复几次。有没有办法实现这一目标?

python input set python-3.x

4
推荐指数
2
解决办法
335
查看次数

两个功能的产物

我有两个功能,fg.两者都有相同的签名:(x).我想创建一个z具有相同签名的新函数:

def z(x):
  return f(x) * g(x)
Run Code Online (Sandbox Code Playgroud)

除了我想能写

z = f * g而不是上面的代码.可能吗?

python functional-programming python-3.x

3
推荐指数
2
解决办法
1869
查看次数