The easiest way is modulo user_id by the number of parameters:
choice = user_id % number_of_options
It is very easy and fast. However, if you know user_id, you can guess the algorithm.
In addition, pseudo-random sequences can be obtained from random , seeded with user constants (for example, user_id ):
>>> import random >>> def generate_random_value(user_id): ... random.seed(user_id) ... return random.randint(1, 10000) ... >>> [generate_random_value(x) for x in range(20)] [6312, 2202, 927, 3899, 3868, 4186, 9402, 5306, 3715, 7586, 9362, 7412, 7776, 4244, 1751, 3424, 5924, 8553, 2970, 709] >>> [generate_random_value(x) for x in range(20)] [6312, 2202, 927, 3899, 3868, 4186, 9402, 5306, 3715, 7586, 9362, 7412, 7776, 4244, 1751, 3424, 5924, 8553, 2970, 709] >>>