Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def log_consumer(name,val,tick):
- for i,h in enumerate(val):
- s = (name+': '+str(i)+str(h.lines) + ' Потребление: '+str(h.value) + ' Доход: '+str(h.revenue)
- + ' Прогноз: ' + str(h.forecast[tick:tick+5]))
- yield s
- def log_generator(name,val):
- for i,h in enumerate(val):
- s = name+': '+str(i)+str(h.lines) + ' Генерация: '+str(h.value)
- yield s
- def log_offer(name,val):
- for i,h in enumerate(val):
- s = (name+': '+str(i) + ' Объём энергии: '+str(h.flux) + ' Выплата: '+str(h.price)
- + ' Длительность: '+str(h.duration))
- yield s
- def log_all(psm):
- tick = psm.tick
- yield '-------------------------------------------------'
- yield 'Тик: ' + str(tick) + ' Счёт: ' + str(psm.score)
- yield ''
- yield 'Потери на линиях: ' + str(psm.losses)
- yield ''
- for s in log_consumer('Дом',psm.houses,tick):
- yield s
- yield ''
- for s in log_consumer('Больница',psm.hospitals,tick):
- yield s
- yield ''
- for s in log_consumer('Завод',psm.factories,tick):
- yield s
- yield ''
- for s in log_generator('Солнечные',psm.sun_gens):
- yield s
- yield ''
- for s in log_generator('Ветровые',psm.wind_gens):
- yield s
- yield ''
- yield 'Заранее куплено: ' + str(psm.external.manual.buy) + ' Продано: ' + str(psm.external.manual.sell)
- yield 'Автоматическая покупка: ' + str(psm.external.automatic.buy) + ' Продажа: ' + str(psm.external.automatic.sell)
- yield 'Запланированная покупка: ' + str(psm.external.outstanding.buy[tick:tick+5])
- yield 'Запланированная продажа: ' + str(psm.external.outstanding.sell[tick:tick+5])
- yield ''
- yield ('Заряд: ' + str(psm.grav.charge) + ' Ёмкость: ' + str(psm.grav.capacity)
- + ' Макс. заряд: ' + str(psm.grav.charge_rate) + ' Макс. разряд: ' + str(psm.grav.discharge_rate))
- yield ''
- yield 'Сила ветра: ' + str(psm.wind.value) + ' Прогноз: ' + str(psm.wind.forecast[tick:tick+5])
- yield 'Яркость солнца: ' + str(psm.sun.value) + ' Прогноз: ' + str(psm.sun.forecast[tick:tick+5])
- yield ''
- for s in log_offer('Биржа buy',psm.offers.buy):
- yield s
- for s in log_offer('Биржа sell',psm.offers.sell):
- yield s
- yield ''
- for s in log_all(psm):
- print(s)
- with open('log_file.txt', 'a') as f:
- for s in log_all(psm):
- f.write(s+'\n')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement