игровой объект не имеет атрибута 'name' error - PullRequest
0 голосов
/ 03 мая 2020

У меня есть этот код ниже, я не вижу, что я делаю неправильно при получении данных, вводимых для отображения. Я получаю сообщение об ошибке «объект игры не имеет имени атрибута». Помогите пожалуйста кто-нибудь увидеть что я делаю не так? (Начинающий программист)

class games():
    def _init_(self,name,platform,genre):
        self.name = name
        self.platform = platform
        self.genre = genre


    def display(self):
        print (self.name,end='\t\t')
        print (self.platform,end='\t\t')
        print(self.genre)

def getData(games):
    #st=list()
    st = []
    n=int(input("enter no of games: "))
    print('games details are...')
    for i in range (n):
        print ('Games : ', i+1)
        name=input('\tName : ')
        platform=input('\tPlatform : ')
        genre=input('\tGenre : ')
        st.append(games())
    print ("Game Details")
    print ('Name\t\tPlatform\t\tGenre')
    for i in range(n):
        st[i].display()

getData(games)

1 Ответ

1 голос
/ 03 мая 2020

Несколько исправлений:

  1. У вас есть опечатка в классе init: это __init__, а не _init_.
  2. Вы добавляете в свой список игр (st) пустых экземпляров. Поэтому измените

    st.append(games())

на

st.append(games(name,platform,genre))  #name,platform,genre here are the values entered via `input`

Отдельно, пожалуйста, рассмотрите соответствующее соглашение об именах для классов и функций. См. Руководство по стилю PEP8 для соглашения по именованию классов . Это поможет вам в долгосрочной перспективе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...