2016-03-08 4 views
0

У меня есть фляжка с несколькими импортируемыми файлами.Странная ошибка с файлом импорта в python

import os 
from flask import Flask, render_template,request,redirect, url_for,json,jsonify 
from werkzeug import secure_filename 
import Dmyabc as dmyab 

import Dmyabc as dmyab было прекрасно работать раньше, и я звала свои функции от него с помощью:

dmyab.run1() 
dmyab.total() 

Но вдруг он перестал работать и начал выдавать ошибку в

Объект Безразлично» t имеют атрибут run1 или всего

Может ли кто-нибудь сказать мне, что именно произошло, чтобы я мог избежать этого в будущем.

Сейчас я использую тот же файл, как:

from Dmyabc import run1, total 
+1

Пожалуйста, выберите [mcve]. Если я создаю модуль с именем 'Dmyabc', я могу импортировать его, и его атрибуты будут прекрасными. – davidism

ответ

1

Скорее всего, у вас есть dmyab объект, созданный или после import Dmyab as dmyab, что тени на Dmyab модуль импортируемого в dmyab. Вы можете проверить, что, совершив что-то вроде print type(dmyab), вы должны получить что-то еще, кроме модуля ... Ваше обходное решение работает, потому что вы напрямую импортируете функции из модуля; но он может работать так же, вероятно, если вы сделаете что-то вроде этого:

import Dmyab as other_dmyab 
[...] 
other_dmyab.run1() 

например.

+0

Спасибо @mgguijarr, Похоже, что я использовал брелок dmyab на многих местах, но когда я изменил и импортировал с помощью ** other_dmyab **, он начал нормально работать. Прямо сейчас не было много времени, чтобы узнать, что перекрывает его, но я уверен, что узнаю. еще раз спасибо – Manojcode

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