代码之家  ›  专栏  ›  技术社区  ›  Adam

PyCharm UnitTests:AttributeRor:模块“Enum”没有属性“IntFlag”

  •  2
  • Adam  · 技术社区  · 6 年前

    我有个错误 只有 在pycharm中运行unittests时出现。

    OSX上的Python3.6.5。

    /Users/me/project/env/bin/python /Applications/PyCharm.app/Contents/helpers/pycharm/_jb_unittest_runner.py --target test_module.TestClass.test_method
    
    Traceback (most recent call last):
      File "/Applications/PyCharm.app/Contents/helpers/pycharm/_jb_unittest_runner.py", line 4, in <module>
        from unittest import main
      File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/unittest/__init__.py", line 58, in <module>
        from .result import TestResult
      File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/unittest/result.py", line 5, in <module>
        import traceback
      File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/traceback.py", line 5, in <module>
        import linecache
      File "/Users/enos/patrf/api/env/lib/python3.6/linecache.py", line 11, in <module>
        import tokenize
      File "/Users/enos/patrf/api/env/lib/python3.6/tokenize.py", line 33, in <module>
        import re
      File "/Users/enos/patrf/api/env/lib/python3.6/re.py", line 142, in <module>
        class RegexFlag(enum.IntFlag):
    AttributeError: module 'enum' has no attribute 'IntFlag'
    

    这个错误似乎与 Why Python 3.6.1 throws AttributeError: module 'enum' has no attribute 'IntFlag'? 这里的建议不起作用。

    • 添加 enum-compat to requirements.txt不会改变任何内容。
    • 琐碎的单元测试 .py 不导入任何内容的文件仍然显示此问题。
    • 没有 enum.py 我的项目目录中的文件。
    • 发生在一个干净的 virtualenv 和一个干净的 venv 是的。
    • 除了皮查姆,一切都很好。

    这似乎只发生在我有一个使用石墨烯的项目中,它确实有 枚举.py ,但即使删除这些文件也没有效果。 find . -name "enum.py" 不返回任何内容。

    皮查姆的专家有什么想法吗?我真的很喜欢在PyCharm中运行我的测试,我很希望能够在这个项目中这样做。

    0 回复  |  直到 6 年前