我的python入口点需要作为模块(而不是脚本)运行,如:
python -m foo.bar
以下不起作用(并且不应该):
python foo/bar.py
如何使用上面的第一个调用在pycharm中创建运行我的代码的运行确认?
在找出正确的python 2.x首选方法进行相对导入时遇到一些麻烦,以便我可以将测试脚本保存在一个子包中,并让这些测试脚本能够测试我的库.
$ farm\testpad\testpad.py
Traceback (most recent call last):
  File "C:\farm\testpad\testpad.py", line 4, in <module>
    from ..animals.dog import dog
ValueError: Attempted relative import in non-package
$ python -m farm\testpad\testpad
C:\Python27\python.exe: No module named farm\testpad\testpad
在以下示例中,我需要修改哪些内容才能执行我想要的操作?拜托,感谢您给予的任何帮助.
例如
包装结构:
farm/
    __init__.py # empty
    animals/
        __init__.py # empty
        dog.py
    testpad/
        __init__.py # empty
        testpad.py
dog.py
import sys
import os
class dog():
  def __init__(self, name):
    self.name = name
  def speak(self):
    print "woof"
testpad.py
import os
import sys
from ..animals.dog import …Pycharm 无法识别我的项目模块的包。
我注意到已经有很多关于此的问题,但是我尝试了所有给定的解决方案,但没有任何效果。
我试过:
- Mark directory as source root& 检查Add sources root to pythonpath
- 打开一个不同的项目,然后重新打开原来的项目,使 pycharm 重新索引包
有什么建议?
我回顾了以下问题
PyCharm 无法识别安装在开发模式下的模块
Pycharm 无法识别包,即使 __init__.py 退出