为什么我在创建类对象时会在 python 中遇到属性错误

问题描述 投票:0回答:1

如果我经常出现 AttributeError 我该怎么办?它一直说“用户”对象没有属性。有什么需要我再次做出的声明吗?

这是我的代码:

class User:
   def_init_(self, name, email, age):
     self.name = name
     self.email = email
     self.age = age

def greeting(self):
  return f' My name is {self.name} and I am {self.age} years, you can contact me on my email{self.email}'

kay= User('Kayboy',      '[email protected]', 18)

print(kay.greeting())
python class object initialization attributeerror
1个回答
0
投票

您可能犯了缩进错误。 错误代码:

class User:
    def __init__(self, name, email, age):
        self.name = name
        self.email = email
        self.age = age

def greeting(self):
    return f'My name is {self.name} and I am {self.age} years, you can contact me on my email{self.email}'

kay= User('Kayboy', '[email protected]', 18)
print(kay.greeting())

这里的greeting是一个独立的函数,不是User类的一部分。并且您调用时出现属性错误

kay.greeting

正确代码:

class User:
    def __init__(self, name, email, age):
        self.name = name
        self.email = email
        self.age = age

    def greeting(self):
      return f'My name is {self.name} and I am {self.age} years, you can contact me on my email{self.email}'

kay= User('Kayboy', '[email protected]', 18)
print(kay.greeting())
© www.soinside.com 2019 - 2024. All rights reserved.