Skip to main content
 首页 » 编程设计

python之python 范围函数中的 ValueError(打印 3^(2^n))

2025年05月04日1552php

在尝试打印幂序列(3,2^n)时,即 3^2,3^4,3^8 ,我尝试使用范围函数使用以下行。是否可以使用范围函数以获得所需的输出?如果是这样,请告诉我哪里出错了。

for i in range(3,1000, i*(i-1)): print (i*i) 

例如,对于 i=3,9,81,预期输出如下

i*i:=9,81,6561 

但错误是:

Traceback (most recent call last): 
  File "<pyshell#28>", line 1, in <module> 
    for i in range(3,1000, i*(i-1)): print (i*i) 
ValueError: range() arg 3 must not be zero 

在这种情况下步长值怎么可能为零呢?

请您参考如下方法:

您可以使用列表理解来构建您所有权力的列表:

mylist = [3**(2**n) for n in range(1,10)]  # or whatever range 

然后遍历理解以打印所有结果(如果需要)。您可以在此循环中对结果执行其他操作,而不是打印它们。

for item in mylist: 
  print(item)  # print each item on a new line