No he encontrado el hilo para presentarme en este foro y aprovecho para hacerlo aquí

Bueno, estoy empezando a estudiar Python de forma autodidacta con vídeos de YouTube (Gracias a muchos argentinos que veo dominan este lenguaje a la perfección) y tutoriales de la red. Bueno, pues en lo mas básico me asalta una duda...
(He de decir que tengo instalada la versión 2.7.2 para aprovechar toda la documentación mas extensa en esta versión)
Pues mirando el tema de la sintaxis y las palabras reservadas en Python ( print, for, While, etc... ) creía yo, que las funciones también lo estaban. Y veo que no. Es decir, si uso la función len para leer la longitud de una cadena, veo que puedo tratarla como una variable. Osea, puedo definir len=1 y toma ese valor. Con la consiguiente perdida de esa función en todo el código creado posteriormente ¿Esto no es malo para programar? ¿Que pasa si la gente se olvida del nombre de una función y le asigna valor de variable?
Quizás es una duda muy básica. Pero yo vengo del Basic de hace algún tiempo donde todo era reservado.
Muchas gracias y espero aprender un monton con vuestra ayuda...
