Crear e importar módulos en Python

En Python, un módulo es un archivo de Python autónomo que contiene declaraciones y definiciones de Python, como un archivo llamado GFG.py, puede considerarse como un módulo llamado GFGque puede importarse con la ayuda de import statement. Sin embargo, uno podría confundirse acerca de la diferencia entre módulos y paquetes. Un paquete es una colección de módulos en directorios que dan estructura y jerarquía a los módulos.

Ventajas de los módulos –

  • Reutilización : trabajar con módulos hace que la reutilización del código sea una realidad.
  • Simplicidad: el módulo se centra en una pequeña parte del problema, en lugar de centrarse en todo el problema.
  • Alcance: un espacio de nombres separado se define mediante un módulo que ayuda a evitar colisiones entre identificadores.

Creación e importación de un módulo

Un módulo es simplemente un archivo de Python con una .pyextensión que se puede importar dentro de otro programa de Python. El nombre del archivo de Python se convierte en el nombre del módulo. El módulo contiene definiciones e implementación de clases, variables y funciones que pueden usarse dentro de otro programa.

Ejemplo: Vamos a crear un módulo simple llamado GFG.

''' GFG.py '''
  
# Python program to create
# a module
  
  
# Defining a function
def Geeks():
    print("GeeksforGeeks")
  
# Defining a variable
location = "Noida"

El ejemplo anterior muestra la creación de un módulo simple llamado GFG, ya que el nombre del archivo de Python anterior es GFG.py. Cuando se ejecuta este código no hace nada porque no se invoca la función creada.

Para usar el módulo creado anteriormente, cree un nuevo archivo de Python en el mismo directorio e importe el módulo GFG usando la declaración de importación.

Ejemplo:

# Python program to demonstrate
# modules
  
  
import GFG
  
# Use the function created
GFG.Geeks()
  
# Print the variable declared
print(GFG.location)

Producción:

GeeksforGeeks
Noida

El ejemplo anterior muestra un módulo simple con solo funciones y variables. Ahora vamos a crear un módulo un poco complejo con clases, funciones y variables. A continuación se muestra la implementación.

Ejemplo: Abra el módulo GFG creado anteriormente y realice los siguientes cambios.

''' GFG.py '''
  
# Python program to demonstrate 
# modules
  
  
# Defining a function
def Geeks():
    print("GeeksforGeeks")
  
# Defining a variable
location = "Noida"
  
# Defining a class
class Employee():
      
    def __init__(self, name, position):
        self. name = name
        self.position = position
          
    def show(self):
        print("Employee name:", self.name)
        print("Employee position:", self.position)

En este ejemplo, se ha declarado una clase llamada empleado con un método show() para imprimir los detalles del empleado. Ahora abra el script de Python para importar y usar este módulo.

Ejemplo:

# Python program to demonstrate
# modules
   
   
import GFG
   
  
# Use the class created
emp = GFG.Employee("Nikhil", "Developer")
emp.show()

Producción:

Employee name: Nikhil
Employee position: Developer

Importar todos los nombres

Todo el objeto de un módulo se puede importar como una variable. Esto evita el uso del nombre del módulo como prefijo.

Sintaxis:

from module_name_ import *

Ejemplo: Usaremos el módulo GFG creado anteriormente.

# Python program to demonstrate
# modules
   
   
from GFG import *
   
  
# Calling the function
Geeks()
  
# Printing the variable
print(location)
  
# Calling class
emp = Employee("Nikhil", "Developer")
emp.show()

Producción:

GeeksforGeeks
Noida
Employee name: Nikhil
Employee position: Developer

Importar con cambio de nombre

Un módulo se puede importar con otro nombre, especificado por el usuario.

Ejemplo:

# Python program to demonstrate
# modules
   
   
import GFG as g
   
  
# Calling the function
g.Geeks()
  
# Printing the variable
print(g.location)
  
# Calling class
emp = g.Employee("Nikhil", "Developer")
emp.show()

Producción:

GeeksforGeeks
Noida
Employee name: Nikhil
Employee position: Developer

Publicación traducida automáticamente

Artículo escrito por nikhilaggarwal3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *