Ejemplo 1: Python falta 1 argumento posicional requerido:
def your_method(self, arg1, arg2): # you must add the "self" argument in 1st position
# This kind of error happens when working with classes
# When you create methods for a class, you must always pass self as the first argument
# self designates the object in which it is called
# for instance :
class Dog: # let create a class Dog
def __init__(self, color, age): # when you create a new Dog object, two parameters are required
self.color = color # here, whe use self to attach the attribute to this Dog object
self.age = age
self.bark("Woof")
def bark(self, message): # your error might come from the fact you forgot to add the self element as the first argument in, at least, one method
print(message)
# This is a very simple example but it stays true for every class
# You have to pass self as the first argument for each method
Ejemplo 2: Python falta 1 argumento posicional requerido:
"""
This might pop up if you're trying to use a class directly,
rather than instantiating it
"""
class MyClass:
def __init__(self, attr) -> None:
self.attr = attr
def get_attr (self):
self.attr
# CORRECT
myclass = MyClass(1)
print (type(myclass)) # <class '__main__.MyClass'>
print (myclass.get_attr()) # 1
# INCORRECT
myclass = MyClass
print (type(myclass)) # <class 'type'>
print (myclass.get_attr())
# TypeError: get_attr() missing 1 required positional argument: 'self'
# INCORRECT (effectively the same as above)
print (type(MyClass)) # <class 'type'>
print (MyClass.get_attr())
# TypeError: get_attr() missing 1 required positional argument: 'self'
Ejemplo 3: reg.fit (x_train, y_train) TypeError: fit () falta 1 argumento posicional requerido: ‘y’
reg = linear_model.LinearRegression() <--- #all i did was add parentheses
xTrain, xTest, yTrain, yTest = train_test_split(dfx, dfy, test_size=0.33, random_state=42)
reg.fit(xTrain, yTrain)
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)