from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) author = 'Vartanov' doc = """ Определим вероятности для последующего розыгрыша """ class Constants(BaseConstants): name_in_url = 'define_risks' players_per_group = None num_rounds = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): def set_payoffs(self): everyone = self.get_players() present = len(everyone) avg_det = 0 avg_almost = 0 for player in everyone: player.participant.vars['eq_prob_det'] = player.eq_prob_determinant player.participant.vars['eq_prob_alm'] = player.eq_prob_almost avg_det = avg_det + player.eq_prob_determinant/present avg_almost = avg_almost + player.eq_prob_almost/present for player in everyone: player.participant.vars['avg_prob_det'] = int(avg_det) player.participant.vars['avg_prob_alm'] = int(avg_almost) class Player(BasePlayer): eq_prob_determinant = models.PositiveIntegerField( verbose_name='Вероятность в процентах (%)', min=0, max=100) eq_prob_almost = models.PositiveIntegerField( verbose_name='Вероятность в процентах (%)', min=0, max=100)