У меня есть класс Itinerary
с двумя атрибутами: destinations
и startTime
Существует равный шанс между двумя маршрутами (opt1
и opt2
) для destinations
, который оба словаря с адресами назначения в качестве ключей и днем посещения (0,1, ... n) в качестве значений.
Существует также равная вероятность, что startTime
будет datetime(2020,1,1,12,0,0)
и datetime(2020,1,1,9,0,0)
Вот мой код:
class Itinerary:
def __init__(self, destinations, startTime):
self.destinations = np.random.choice(list(destinations), p = list(destinations.values()))
self.startTime = np.random.choice(list(startTime), p = list(startTime.values()))
destinations = { opt1 : 0.5, opt2 : 0.5 }
startTime = { datetime(2020,1,1,12,0,0) : 0.5, datetime(2020,1,1,9,0,0) : 0.5 }
d = Itinerary(destinations, startTime)
Но я получаю сообщение об ошибке: TypeError: unhashable type 'dict'
Как я могу назначить словарь как атрибут класса? У меня такое чувство, что это как-то связано с np.random.choice
в функции, но я этого не понял.