Python 替代构造函数缺少必需的位置参数
我编写了一个函数wczytaj来获取所有参数,我想将它们返回给构造函数,但它不能以这种方式工作。我想知道为什么不,以及如何修复它 我得到这个错误:Python 替代构造函数缺少必需的位置参数,python,function,oop,Python,Function,Oop,我编写了一个函数wczytaj来获取所有参数,我想将它们返回给构造函数,但它不能以这种方式工作。我想知道为什么不,以及如何修复它 我得到这个错误: TypeError: wczytaj() missing 3 required positional arguments: 'a', 'b', and 'c' 是否无法编写一个函数并返回3个参数 from math import sqrt def wczytaj(a , b , c): a = input("Podaj para
TypeError: wczytaj() missing 3 required positional arguments: 'a', 'b', and 'c'
是否无法编写一个函数并返回3个参数
from math import sqrt
def wczytaj(a , b , c):
a = input("Podaj parametr A? ")
b = input("Podaj parametr B ")
c = input("Podaj parametr C? ")
return a , b , c
class Rk:
def __init__(self,a,b,c):
self.a = a
self.b = b
self.c = c
nowe = Rk(wczytaj())
print("Ten program rozwiązuje równanie kwadratowe po podaniu parametrów.")
print("\n Równianie jest postaci {}x*x + {}x + {} = 0 ".format(a, b, c), end="")
从wczytaj函数中删除参数 然后您必须使用*运算符将返回值作为参数解包到类_init中__ 您现在可以看到,当我分别输入1、2、3时,成员现在已设置
>>> nowe.a
1
>>> nowe.b
2
>>> nowe.c
3
你为什么不做呢?我已经删除了解释我的请求[OOP];这是一个过于宽泛的问题。
nowe = Rk(*wczytaj())
>>> nowe.a
1
>>> nowe.b
2
>>> nowe.c
3