2013-02-19 2 views
7

Как правило, для импорта модуля numpy используется import numpy as np.Условные обозначения для 'import ... as'

Существуют ли общие соглашения для обозначения?

Что касается других модулей, в частности от научных вычислений, таких как scipy, sympy и pylab или подмодулей, таких как scipy.sparse.

+1

http://docs.scipy.org/doc/scipy/reference/tutorial/general.html – theta

+5

Как англичанин, вы будете часто находить 'импортную математику, как maths' в моем коде , Остановит меня все время. –

ответ

10

SciPy рекомендует import scipy as sp в its documentation, хотя лично я считаю, что это бесполезно, поскольку он дает вам доступ к повторно экспортированной функциональности NumPy, а не к чему-то, что SciPy добавляет к этому. Я часто делаю import scipy.sparse as sp, но потом сильно использую этот модуль. Также

import matplotlib as mpl 
import matplotlib.pyplot as plt 
import networkx as nx 

Возможно, вы столкнетесь с этим, когда начнете использовать больше библиотек. Для этих сокращений нет никакого реестра или чего-то еще, и вы можете изобретать новые, как вам удобно. Также нет общего соглашения, за исключением того, что import lln as library_with_a_long_name, очевидно, не будет происходить очень часто.

Помимо этого сокращения от, нет привычку среди Python 2.x программистов, чтобы сделать такие вещи, как

# Try to import the C implementation of StringIO; if that doesn't work 
# (e.g. in IronPython or Jython), import the pure Python version. 
# Make sure the imported module is called StringIO locally. 
try: 
    import cStringIO as StringIO 
except ImportError: 
    import StringIO 

Python 3.x будет положить этому конец, хотя, потому что она больше не предлагает частичные реализации C из StringIO, pickle и т.д.

+4

В соответствии с документами «Scipy sub-packages необходимо импортировать отдельно», то есть «из scipy import sparse», что имеет больше смысла, чем «import scipy.sparse as sp», тем более что scipy рекомендуется импортировать под 'sp '. Поэтому предложение «scipy.sparse», которое будет импортироваться под 'sp', безусловно, не является хорошей рекомендацией, хотя вы можете импортировать модули под любым именем, которое вы хотите, что не то, что задает OP. – theta

Смежные вопросы