Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
没有扩展名的python文件可以工作,但扩展名为.py的python文件无法导入我的模块_Python - Fatal编程技术网

没有扩展名的python文件可以工作,但扩展名为.py的python文件无法导入我的模块

没有扩展名的python文件可以工作,但扩展名为.py的python文件无法导入我的模块,python,Python,我的python文件在C:\Python27\Lib\site packages下的包中有“from..import”语句。 如果我的文件名没有任何扩展名(例如foo),那么“pythonfoo”可以工作 如果我将文件从foo重命名为foo.py,那么在foo.py中对该包的“from..import”语句将失败: try: from my_package.System.prefix import ... except ImportError: print "ERROR: Cou

我的python文件在C:\Python27\Lib\site packages下的包中有“from..import”语句。
如果我的文件名没有任何扩展名(例如foo),那么“pythonfoo”可以工作
如果我将文件从foo重命名为foo.py,那么在foo.py中对该包的“from..import”语句将失败:

try: from my_package.System.prefix import ... except ImportError: print "ERROR: Could not import modules." 尝试: 从my_package.System.prefix导入。。。 除恐怖外: 打印“错误:无法导入模块。” 我有:
PYTHONPATH=C:\Python27\Lib\site包

环境:Windows XP/Python 2.7

我将在这里做一个粗略的猜测:您的文件名是否与您尝试导入的包相同(
myu-package

通过创建一个文件,
django.py
,我能够重现类似于您描述的行为,该文件包含来自django.db导入模型的import语句
。当我运行
pythondjango.py
时,我得到了
ImportError:没有名为db的模块。当我将代码移动到名为
django
(没有.py扩展名)的文件中时,删除了
django.pyc
文件,并运行
python django
,导入成功


为什么Python尝试导入
django
模块,它首先在包含正在执行的程序的目录中查找
django.py
文件。在第一种情况下,它导入我创建的
django.py
文件,而不是安装在
站点包中的
django
模块。在第二种情况下,我重命名了我的文件
django
,Python在与我的文件相同的目录中找不到
django.py
,因此它正确地从
站点包导入
django

您能给我们看看堆栈跟踪,以及相关包和模块的目录树布局吗?对不起,我已经把所有的法力都用在读心术上了。您必须描述您的实际设置。非常感谢!这正是我的情况:filename=包名