#python #python-import
Вопрос:
Мне нравится импортировать функции из другого файла python словаря. Например,
A.py содержит функцию get_total(), и B.py может получить эту функцию, если пользователь «из импорта get_total».
Однако, когда A.py необходимо импортировать модуль numpy и использовать функцию numpy.sum() в функции get_total (), B.py не удается использовать функцию get_total() из A. причина ошибки «Ошибка имени: имя» np «не определено», что случилось?
A.py:
import numpy as np
def get_total(list):
return np.sum(list)
B.py:
from A import get_total
a = [1,2,3,4,5]
b=get_total(a)
print(b)
Ошибка:
1 import numpy
----> 2 def get_total(list):
3 return numpy.sum(list)
4
5 c = [1,2,3,4,5]
NameError: name 'np' is not defined
Комментарии:
1. в функции, которую вы использовали
numpy
неnp
2. даже я использую импорт numpy как np, та же ошибка, и я также импортирую numpy как np в B.py, не работает
3. Это сообщение об ошибке не соответствует коду — похоже, вы отредактировали исходный код без перезапуска Python. Перезагрузите Python.
Ответ №1:
Вам также необходимо импортировать numpy в B.py:
import numpy as np
from A import get_total
a = [1,2,3,4,5]
b=get_total(a)
print(b)
Редактировать: Это не требуется , так как все вычисления numpy выполняются в A.py
, в который импортирован numpy.
Комментарии:
1. я импортировал, та же ошибка, не знаю, почему
2. не нужно импортировать пакеты дважды. Если функция/класс определен в модуле python, то все его предварительные условия должны быть выполнены там, а не где-либо еще