Теорія:

При розробці програм досить часто виникає необхідність отримати деяке випадково обране з певної множини значення. Випадкові значення потрібні, коли ми розробляємо комп'ютерні ігри, генеруємо зображення і звук, пишемо тести для перевірки знань.
Як отримати випадкове ціле число?
Щоб отримати випадкове число, необхідно за допомогою команди import завантажити в Python додатковий модуль random:
from random import*
Випадкове число отримуємо за допомогою функції randint.
Функція randint(х1,х2) вибирає ціле випадкове число в діапазоні від х1 до х2.
Приклад:
Зробимо декілька спроб отримати випадкове число в діапазоні від 1 до 10 в інтерактивному режимі:
>>> from random import*
>>> randint (1,10)
8
>>> randint (1,10)
6
Як бачимо, при новій спробі отримане інше число (але число могло й повторитися).
Приклади використання випадкових чисел
Приклад:
Дано число а, 1<=a<1000. Напиши програму для визначення кількості цифр у числі а.
from random import*
a = randint (1,999)
if a<10: print (’1’)
     else: if a<100: print (’2’)
             else print (’3’)
Приклад:
Комп'ютер генерує випадкове число від 0 до 99. Користувач робить спробу вгадати це число та вводить число з клавіатури. Якщо число вгадане, то виводиться повідомлення «ВГАДАНО!», якщо уведене число більше того, що «задумав» комп'ютер — повідомлення  «ТВОЕ ЧИСЛО БІЛЬШЕ.», якщо уведене число менше задуманого —  повідомлення   «ТВОЕ ЧИСЛО МЕНШЕ.».
from random import*
a = randint(1, 100)
b = int (input ("Спробуй вгадати число: "))
if a == b: print ("ВГАДАНО!'')
else:
.  .  .if a < b: print ("ТВОЕ ЧИСЛО БІЛЬШЕ.'')
.  .  .else: print ("ТВОЕ ЧИСЛО МЕНШЕ.")
Приклад:
Створимо завдання для перевірки знання таблиці множення.
Множники генеруються випадковим чином. Учневі пропонується ввести значення добутку, програма перевіряє правильність відповіді.
from random import*
a = randint(1, 10)
b = randint(1, 10)
print (a, "*", b, "=")
c = int(input("Твоя відповідь: "))
if a*b==c: print ("Правильно!")
else: print("Спробуй ще!")