有没有办法在Python中迭代(1,10 ^ -1,10 ^ -2,...,10 ^ -11)?

时间:2016-11-07 22:16:05

标签: python

我正在使用范围函数,但我无法得到这12个值(1,10 ^ -1,10 ^ -2,...,10 ^ -11)的值。有谁知道如何生成这个简单的数字系列。我想用这些数字进行迭代。

2 个答案:

答案 0 :(得分:3)

GENEX:

for val in (10 ** -ex for ex in range(12)):
   ...

答案 1 :(得分:0)

您可以将自定义迭代器创建为:

def my_range(num, pow_start, pow_end):
    for i in range(pow_start, pow_end):
        yield num**(-i)

示例运行:

>>> for i in my_range(10, 0, 12):
...     print i
...
1
0.1
0.01
0.001
0.0001
1e-05
1e-06
1e-07
1e-08
1e-09
1e-10
1e-11