我写了一个函数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 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="")
答案 0 :(得分:2)
从wczytaj
函数
def wczytaj():
a = input("Podaj parametr A? ")
b = input("Podaj parametr B ")
c = input("Podaj parametr C? ")
return a , b , c
然后你必须使用*
运算符将返回的值作为参数解压缩到类__init__
nowe = Rk(*wczytaj())
您现在可以看到,当我分别输入1
,2
,3
时,成员现已设置
>>> nowe.a
1
>>> nowe.b
2
>>> nowe.c
3