Вызывая объект в словаре, объект "по имени" в цикле for - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь сделать простую базу данных шахматных игр от PGN, но хочу добавить к ним конкретную информацию, если нужно, поэтому я создал этот код:

class Games(object):
    q=0
    def __init__(self,name):
        self.name = name
        Games.q+=1
        self.q=Games.q
    def __str__(self):
        return str(self.name)
inp= howmany() #just simple function, outputs ineger
dic={}
c=0
for x in range(1,inp+1):
    c+=1
    prov_name = "game%d" % (c)
    dic[x]= Games(prov_name)
print dic[560]
dic[560].tournament_in = "Prague"
print dic[560].tournament_in
print game560.name

howmany () - это просто функция, которая выводит маленькое целое число, ПОСЛЕДНЯЯ ПЕЧАТЬ БЕЗ ЗАПУСКА

Вывод, если мы удалим "print game560.name":

>game560
>Prague

Видите ли, теперь я знаю, что могу сделать даже это:

obj = dic[560]
print obj.whatever

Дело в том, что я действительно хочу использовать только имя объекта, в данном случае game560, чтобы делать такие вещи:

game560.coffeServedDuringGame = "I dont really care"
print game560

Есть ли способ извлечь эти экземпляры из словаря, например, или каким-то другим путем?

`

...