pycharm Error:'__main__' is not a package以及红线问题

 

先看一下痛点:

Error:

  • from .xx import  xx    不可运行, 无红线,可点跳  (xx前带“.”)
  • from xx import  xx    可运行, 有红线,不点跳  (xx前不带“.”)

最终效果:

  • from xx import  xx     可运行, 无红线,可点跳  (xx前不带“.”)

目录结构:

pycharm Error:'__main__' is not a package以及红线问题_第1张图片

内容做测试用,故很简单:

__init__.py:

__all__ = ['T1','T2']

T1.py:

def show_T1():
    print('T1')

T2.py:

def show_T2():
    print(T2)

run.py:(这个我需要截图,做对比了)

第一行写:form .T1 import show_T1 时(注意T1前带点“.”),没有错误,也没有红线,可以通过点击包含的文件函数,直接跳转,很方便,特别是项目很大的时候,逻辑嵌套很多的时候,来回跳转,调试改bug很爽。

但运行时,o(╥﹏╥)o 。。。

pycharm Error:'__main__' is not a package以及红线问题_第2张图片

第一行,不带点:from T1 import show_T1 时,正好相反,可运行,但会失去点击跳转功能,还有当包含过多自建文件模块时,会有满屏的红线错误提示,非常碍眼,让老板同事看到也不好。当然,我更为前者痛心。项目大了,就没法搞。

pycharm Error:'__main__' is not a package以及红线问题_第3张图片

核心问题:

 引入模块包出错

解决办法:

1. 在工作文件夹下添加__init__.py   对我反正没有起到效果

2. 手动设置工作根结点路径:选中文件夹,右键——》Mark Directory as ——》Source Root

pycharm Error:'__main__' is not a package以及红线问题_第4张图片

看一下效果:

pycharm Error:'__main__' is not a package以及红线问题_第5张图片

 

你可能感兴趣的:(Python)