¿Alguien puede sugerirme cuál es la forma más pitónica de importar módulos en python? Me explico - He leído un montón de código Python y ha encontrado varias maneras diferentes de cómo importar módulos o si para ser más precisos - cuando a importar:¿Cuál es la forma más pitónica de importar módulos en python?
- utilizar uno de varios módulos del módulo/incluidas sus respectivas importaciones (módulos de terceros) que son necesarios para todo el proyecto, por lo que todas las importaciones se concentran en pocos módulos, por lo que es fácil mantener las importaciones. Cuando un módulo individual requiere que se importe un módulo, solicite el módulo de referencias. Por ejemplo, en nuestro proyecto hemos separado el nivel llamado 'referencias' por lo que contiene módulos como 'system.py' (contiene referencias a todas las bibliotecas del sistema), 'platform.py' (contiene referencias a todas las bibliotecas de plataforma), 'devexpress. py '(contiene referencias a todas las bibliotecas devexpress) y así sucesivamente. Estos módulos tienen el siguiente aspecto:
- Cada módulo importa todas las clases y funciones necesarias en la parte superior del módulo, p. hay una sección con importaciones dentro de cada módulo en el proyecto
- Cada función/clase usa importación localmente, por ejemplo, inmediatamente después de la definición e importa solo cosas que realmente necesitan.
Por favor, encuentre ejemplos a continuación.
1 muestra módulo de importación - sólo 'importación' y 'de ... importación ...' declaraciones (no hay ningún método o clases):
#references.py
import re
import clr
import math
import System
import System.Text.RegularExpressions
import System.Random
import System.Threading
import System.DateTime
# System assemblies
clr.AddReference("System.Core")
clr.AddReference("System.Data")
clr.AddReference("System.Drawing")
...
#test.py
from references.syslibs import (Array, DataTable, OleDbConnection, OleDbDataAdapter,
OleDbCommand, OleDbSchemaGuid)
def get_dict_from_data_table(dataTable):
pass
2 módulo con 'importación' y 'de. .. importación ...', así como los métodos y clases:
from ... import ...
from ... import ...
def Generate(param, param1 ...):
pass
3 módulos con 'importación' y 'de ... importar ...' declaraciones que se utilizan en el interior de los métodos y clases:
import clr
clr.AddReference("assembly")
from ... import ...
...
def generate_(txt, param1, param2):
from ... import ...
from ... import ...
from ... import ...
if not cond(param1): res = "text"
if not cond(param2): name = "default"
Entonces, ¿cuál es la forma más pitónica de importar módulos en python?
Gracias por la respuesta. Pero desde el punto de vista de legibilidad del código, hay beneficios de usar 1,2,3. ¿Cuál es más legible para la mayoría de las personas? –
En la parte superior es el más legible, ya que alguien que mira el código solo debería referirse a un lugar para ver de qué paquete/módulo proviene un nombre. –
Frío: esto significa que he elegido la dirección correcta –