Что делает скрипт в Python?
Я понял, что можно использовать цикл с range, но так и не придумал как, решил иначе. 
Число, которое без остатка делится на некие другие числа, называется Наименьшим Общим Кратным (НОК). Этому в школе учат, но не всех. Для вычисления НОК есть формула, выражающая его через НОД (Наибольший Общий Делитель) - этому в школе учат, но не всех.
Как же так вышло-то в школе?from math import gcd

a = 2
for b in range(3, 21):
    a = a * b // gcd(a, b)
print(a)
Сначала срабатывает первый цикл до выполнения условия, когда оно выполняется - срабатывает второй цикл до выполнения условия, как только оно выполняется - изменяется i  и переходит к первому циклу. i не меняется, пока скрипт не перейдёт ко второму циклу, ко второму циклу он переходит только при выполнении условия в первом. 
Для таких вещей полезно иногда использовать print на каждой итерации каждого цикла, чтоб смотреть где что происходит, если трудно понять это сходу.