Python: импортируйте содержание пакета

Есть так много ответов для PHP и MySQL, но вот код для PHP и Oracle для предотвращения SQL-инъекций, а также регулярное использование драйверов oci8:

$conn = oci_connect($username, $password, $connection_string);
$stmt = oci_parse($conn, 'UPDATE table SET field = :xx WHERE ID = 123');
oci_bind_by_name($stmt, ':xx', $fieldval);
oci_execute($stmt);
57
задан CharlesB 25 February 2013 в 15:08
поделиться

5 ответов

Кроме того, начиная в Python 2.5, относительный импорт возможен. например:

from . import foo

Заключение в кавычки от http://docs.python.org/tutorial/modules.html#intra-package-references :

<час>

Запуск с Python 2.5, в дополнение к неявному относительному импорту, описанному выше, можно записать явный относительный импорт с от формы имени импорта модуля оператора импорта. Эти явный родственник импортирует точки продвижения использования для указания на текущие и родительские пакеты, вовлеченные в относительный импорт. От окружающего модуля, например, Вы могли бы использовать:

from . import echo
from .. import formats
from ..filters import equalizer
43
ответ дан Brian Clapper 24 November 2019 в 19:44
поделиться

Это точно не отвечает на Ваш вопрос, но я собираюсь предложить, чтобы Вы переместили функцию за пределами __init__.py файл, и в другой модуль в том пакете. Можно тогда легко импортировать ту функцию в другой модуль. Если Вы хотите, у Вас может быть оператор импорта в __init__.py файл, который импортирует ту функцию (когда пакет будет импортирован), также.

23
ответ дан mipadi 24 November 2019 в 19:44
поделиться

Если пакет называют testmod, и Ваш init файл поэтому testmod/__init__.py, и Ваш модуль в пакете submod.py тогда из submod.py файл, необходимо просто быть в состоянии сказать import testmod и использовать независимо от того, что Вы хотите, это определяется в testmod.

5
ответ дан Eli Courtwright 24 November 2019 в 19:44
поделиться

Я не полностью уверен, какова ситуация, но это может решить Вашу проблему "другого имени":

import __init__ as top
top.some_function()

Или возможно?:

from __init__ import some_function
some_function()
1
ответ дан cdleary 24 November 2019 в 19:44
поделиться

В Django файл manage.py имеет from django.core.management import execute_manager, но execute_manager не модуль. Это - функция в __init__.py модуль management каталог.

1
ответ дан Esteban Küber 24 November 2019 в 19:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: