2017-04-09 59 views
0

我正在使用以下结构的包。Python错误显示不准确的代码

Package 
    |- __init__.py 
    |- dir 
    |- subdir 
     |- moduleB.py 
     |- __init__.py 
    |- __init__.py 
    |- moduleA.py 
main.py 

main.py尝试导入moduleA,它依次导入moduleB。但是,当它试图导入moduleA时,它会遇到一个错误,并在一行代码中引发了一个错误,此错误已被更改。

我想这是一个缓存问题,所以我删除了包中的所有pycache文件,但仍然失败。

我能做些什么来解决这个问题,我能做些什么来确保这不会成为问题?

Click here for the error

实际的代码

import tensorflow as tf 
from UROP.data_structure.default_dictionary import DefaultDictionary 


def default_distribution(shape, variation, name=''): 
    return tf.truncated_normal(
     shape=shape, 
     stddev=variation, 
     name=name 
    ) 
+2

您能否包含错误? – Vallentin

+0

当'main.py'尝试'导入Package.moduleA'时出现错误?您可能会获得与您想象的不同的模块。 'os.path.realpath('Package .__ file__')会很有趣。 – tdelaney

+0

明天早上我会尽快通过实时更新。 – CBlumey

回答

0

@tdelaney是正确的,并用调试器单步透露,我用的是内核重定向我自己的私人缓存。我在Atom中使用Hydrogen,然后重新启动计算机清除缓存并解决问题。

但是,我无法找到不需要重新启动计算机的缓存依赖关系的长期解决方案。