Ответ:

После каждого присваивания значение переменной a получает соответствующий тип:

  1. a = 10 — int, целое число;
  2. a = '10 10' — str, строка;
  3. a = False — bool, логическое значение;
  4. a = 12.0 — float, вещественное число.

В Python тип переменной определяется присвоенным ей значением и может изменяться при новом присваивании.