0

我有几个采样函数需要调用一定次数,如下面的说明:

samples = [do_sampling() for _unused in range(n_samples)]

我想知道,是否有更紧凑的方式来表达该陈述,尤其是通过避免_unused变量?

4

2 回答 2

2

如果您的目标是从do_sampling()返回值构建一个列表,则没有更紧凑的语法。

Python 约定_用于我忽略此变量:

samples = [do_sampling() for _ in range(n_samples)]
于 2015-05-16T09:20:16.680 回答
2

据我所知,没有更好的方法可以做到这一点。约定是这样做的:

samples = [do_sampling() for _ in range(n_samples)]

如果您使用的是 Python 2.x 而不是 Python 3.x,则可以通过使用 range, 的生成器版本来提高性能xrange(),而不是range()

samples = [do_sampling() for _ in xrange(n_samples)]

_变量通常用作丢弃的、未使用的变量的 Pythonic 表示法。

于 2015-05-16T09:22:03.643 回答