В Python деление целых чисел дает целое число - 0 в этом случае.
Есть два возможных решения. Один состоит в том, чтобы заставить их плавать: 1/2. (обратите внимание на конечную точку) или float (1) /2.
Другой способ - использовать «из future import Division» вверху кода и использовать необходимое поведение.
python -c 'из в будущем деление импорта; математика импорта; печать math.atan (1/2)' дает правильное значение 0,463647609001