欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-14 21:30:06
...

 

先看一下痛点:

Error:

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

最终效果:

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

目录结构:

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

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

__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以及红线问题

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

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

核心问题:

 引入模块包出错

解决办法:

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

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

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

看一下效果:

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