我是python中的新手。我需要打印从1到100的所有数字。当我运行此代码时,我收到此错误
Traceback (most recent call last):
File "C:\Eclipse\workspace\firstpython\src\oopsegmant.py", line 14, in <module>
p = Prime(1)
TypeError: object.__new__() takes no parameters
程序就像这样
class Prime():
def _init_(self,i):
self.i=i
def print_value(self):
while(True):
yield(self.i)
self.i+=self.i
p = Prime(1)
for numb in p.print_value():
if(numb>100):
break
print(numb)
答案 0 :(得分:1)
_init_
应拼写为双下划线,__init__
。
所有特殊方法名称都用双下划线括起来。
print_value
方法也应该在class
下缩进,以便成为其中的一部分。