Я пытаюсь сделать проект с простым, в котором есть класс клиента и класс Bike. Я хочу использовать переменную класса Bike в классе Customer, используя объект. Но я также хочу использовать yield env.timeout () вфункция генератора, как я могу получить значение bike_info из класса Bike в класс Customer.(код является частью 900-строчного кода, который я написал)
import simpy
import pandas
class Customer():
def __init__(self):
self.bike_id = int()
self.interval = int()
self.bike_X = float()
self.bike_Y =float()
def simulate(self,env):
self.bike = Bike()#created an object of Bike
self.bike_id,self.interval,self.bike_X,self.bike_Y = self.bike.bike_info
class Bike():
def __init__(self):
self.bike_id =int()
self.bike_coordinates = tuple()
self.minimum_duration =int()
self.bike_info = tuple()
def select_bike(self,env):
'''Calculate the minimum duration between station and nearest bike this is obtained using the google distance matrix api'''
self.minimum_duration = 5 #say
self.bike_coordinates =48.8584, 2.294 # say x is latitude and y is longitude
self.bike_id =98 #say
yield env.timeout(int(self.minimum_duration))
self.bike_info = (self.bike_id,self.minimum_duration,self.bike_coordinates)
if __name__ == "__main__":
env = simpy.Environment()
c = Customer()
c.simulate(env)
Я ожидаю получить значение bike_info в классе Customer, но получаю ошибку ValueError: для распаковки требуется более 0 значений