我在跟踪这件事时遇到了一些麻烦。当我不在virtualenv下执行'python -m site'时,我得到了一个很好的输出结果,列出了我的sys.path目录和其他东西。当我切换到virtualenv时,没有输出。我简单地看了一下https://github.com/pypa/virtualenv/blob/develop/virtualenv.py下的代码,我可以看到virtualenv创建它自己的site.py - 但这个模块仍然有__main__
挂钩,并且当我从解释器中导入并调用在if __name__ == '__main__'
下执行的任何获取时,它都可以工作。当我尝试通过-m
开关执行它时,有什么区别?为什么在virtualenv下python -m站点没有输出?
0
A
回答
0
我对这个问题有点感兴趣。所以我做了一些黑客。
首先,我通过插入print(__name__)
行来更改site.py在python库目录中。结果是
$ python -m site
site
接下来,我添加了一些文件mymodule.py到库文件夹使用单线print(__name__)
。现在的结果是
$ python -m mymodule
site
__main__
所以似乎网站模块之前python -m site
命令导入将运行该模块作为脚本。当它再次用于脚本执行时,python会省略二次导入。
相关问题
- 1. 为什么Python没有颜色输出?
- 2. 为什么没有输出?
- 3. python readline()什么也没有输出
- 4. Maven:Antrun的结果在目标中,但没有在站点阶段和站点部署的输出中。为什么?
- 5. Python为什么我在这里没有输出
- 6. 为什么它没有显示输出?
- 7. 为什么覆盖没有输出?
- 8. 为什么我的vtkContourFilter没有输出?
- 9. 为什么这个python生成器根据keras没有输出?
- 10. Python,子进程,devenv,为什么没有输出?
- 11. 我的步骤有什么问题,为什么没有输出?
- 12. python virtualenv:为什么我仍然可以在clean/new virtualenv中导入旧模块
- 13. 为什么没有断点?
- 14. Python 2.6 virtualenv,点投掷“ImportError:没有模块名为_md5”
- 15. 当我在python中输入时,什么都没有出现
- 16. 为什么链接下划线没有出现在网站页面
- 17. 为什么输入.m文件?
- 18. 为什么在这个YouTube爬虫中没有输出显示在python中?
- 19. 为什么http响应与站点和代码输出不同?
- 20. 为什么我的网站没有出现在Internet Explorer中?
- 21. 为什么Python在输出中输出'None'?
- 22. 我为什么可以导入没有在.m文件
- 23. 为什么python virtualenv命令在Windows 10上失败?
- 24. 为什么我没有在我的点输出中获得任何图像?
- 25. Python:为什么recv()在阻塞模式下没有阻塞?
- 26. 我能知道为什么它没有给出以下代码的输出,因为没有任何错误?
- 27. 为什么在给定输出下面有区别?
- 28. 为什么python在virtualenv中看不到dist-packages?
- 29. 为什么我如果没有给出预期的输出? (mySQL)
- 30. 为什么virtualenv没有设置我的终端提示符?