Implementar un pequeño sistema de matrícula. (Diseñar los módulos e implementar cada módulo como una función, utilizar variables para los cursos y sus cupos, diferenciarlos por semestre)
Respuestas a la pregunta
Respuesta:
Muy larga ndeahhhhhhhhhhhhhhhhhhhhhh
Explicación:

Menú
Buscar

Espacios de nombres, módulos y paquetes en Python
Categoría: Tutoriales Python
básico, python, tutorial python

Share on facebook
Share on twitter
Share on linkedin
Los módulos y paquetes en Python son la forma de organizar los scripts y programas a medida que estos crecen en número de líneas de código. Por otro lado, un espacio de nombres define los límites en que se puede utilizar un nombre o identificador determinado.
No importa si ahora mismo no sabes qué significan estos conceptos o no entiendes a qué me refiero. Lo descubrirás a lo largo de este tutorial. ¿Te lo vas a perder?
Índice
Nombres y espacios de nombres en Python
Ámbito de una variable en Python
Qué es un módulo en Python
Cómo importar módulos en Python
Ejecutar módulos como scripts
Dónde y cómo busca Python los módulos
La función dir()
Paquetes en Python
Importar definiciones de un paquete
Nombres y espacios de nombres en Python
Nombres
Lo primero que debes tener claro antes de profundizar en los conceptos de este tutorial es qué es un nombre.
Como ya te he señalado en varias ocasiones a lo largo de los diferentes tutoriales, en Python todo es un objeto. El número 2 es un objeto, el texto ‘Hola mundo’ es un objeto, las funciones son objetos, … Pues bien, un nombre o identificador es la forma que existe en Python de referenciar a un objeto concreto. Equivaldría al concepto de variable. En definitiva, una variable no es más que el nombre con el que nos referimos a un objeto que existe en memoria.
Espacios de nombres
Una vez aclarado este término, paso a explicarte qué son los espacios de nombres en Python. Un espacio de nombres es una colección aislada de nombres (o identificadores) que referencian a objetos. Como veremos a continuación, en un mismo script o programa Python pueden coexistir varios espacios de nombres a la vez.
Cuando accedemos a un intérprete de Python o ejecutamos un programa, todos los identificadores que define el lenguaje son añadidos a un espacio de nombres al que es posible acceder desde cualquier punto de un script. Es por esto que las funciones como print() o len() están siempre accesibles. Este espacio de nombres es conocido como espacio de nombres incorporado (o built-in namespace)
Además, cada módulo en Python crea su propio espacio de nombres global. Como te decía, los espacios de nombres están aislados. Esa es la razón por la que en diferentes módulos se pueden usar los mismos nombres y estos no interfieren entre sí.
A su vez, en un módulo existen funciones y clases. Cuando se invoca a una función se crea un espacio de nombres local asociado a dicha función que contiene todos los nombres definidos dentro de la misma (sucede algo similar para las clases).

Ámbito de una variable en Python
Un ámbito define los límites de un programa en los que un espacio de nombres puede ser accedido sin utilizar un prefijo.
Como te he mostrado en el apartado anterior, en principio existen, como mínimo, tres ámbitos. Uno por cada espacio de nombres:
Ámbito de la función actual, que tiene los nombres locales a la función.
Ámbito a nivel de módulo, que tiene los nombres globales, los que se definen en el propio módulo.
Ámbito incorporado, el más externo, que tiene los nombres que define Python.
Cuando desde dentro de una función se hace referencia a un nombre, este se busca en primer lugar en el espacio de nombres local, luego en el espacio de nombres global y finalmente en el espacio de nombres incorporado.
Si hay una función dentro de otra función, se anida un nuevo ámbito dentro del ámbito local