我是Python的新手,几乎一无所知。我正在尝试将函数链接到构造函数,但无法。如何调用主函数中的前两个函数和构造函数中的主函数
在创建对象之后,我可以通过调用外部的inpVal()
和check()
来执行代码,而不使用_init_()
和exec()
,但这样做时它不会显示任何输出
class Acute:
def _init_(self):
self.exec()
def inpVal(self):
print("Enter 3 positive integers(angles):")
self.ang1 = int(input())
self.ang2 = int(input())
self.ang3 = int(input())
def check(self):
if self.ang1 <=0 or self.ang2 <=0 or self.ang3 <=0:
print("Invalid Input")
elif self.ang1+self.ang2+self.ang3 != 180:
print("Not a Triangle")
elif self.ang1 >=90 or self.ang2 >=90 or self.ang3 >=90:
print("Not an Acute Triangle")
else:
print("Acute Triangle")
def exec(self):
self.inpVal()
self.check()
t1 = Acute()
我希望在类声明之后只有一个对象创建语句,默认情况下会调用构造函数,并从中调用exec函数,该函数将调用input和check函数
不能在构造函数中调用main函数。根据定义^{} 这是脚本的入口点
在
__main__
模块中,您应该创建类您的代码存在以下问题:
_init_
不是创建对象时调用的python初始值设定项函数的正确名称。。它应该是__init__
。因为您还没有给出,所以会创建一个默认的初始化函数并调用它李>exec
是现有的python函数名。所以,需要避免李>请参见修改后的代码:
输出:
以下代码按预期工作:
输出:
__init__
(双下划线)__init__
中定义实例属性(变量 带self.
前缀)相关问题 更多 >
编程相关推荐