Python 3
Я изучаю Python через книгу. Прямо сейчас я узнал, что у Python нет констант в том смысле, в котором они доступны на С++ или С#... Например, можно написать такой код опасности:
>>> import math
>>> math.pi
3.141592653589793
>>> math.pi = 123.456
>>> math.pi
123.456
>>>
Хм... Это неприятный сюрприз для меня...
т.е. потенциально я не защищен от того, что любой модуль (который не мой), который я загружаю в свой код, может повредить данные, которые не будут меняться.
Почему в Python это сделано? Разве это не опасно?