问题描述:
今天在用Pycharm写一个flask项目的时候,突然发现很多import, 例如
from flask import render_template
以及import自己写的一些python文件时都会出现红色的下划线,但是运行后却发现没有问题,可以正常引用,但是这还是带来了不少问题,例如红色的下划线非常显眼,并且可能与真正的问题混淆,而且应有的代码提示也消失了
但是之前我学习flask教程,以及上午写程序的时候并没有发生任何问题
看了网上许多中文英文的文章,发现都是建议将文档添加为source root,但是这并没有解决我的问题
同时,我还发现所有的__init__.py文件全部变成了灰色,代码高亮全部消失,而且仔细观察发现一个文件夹下写在__init__.py中的函数不可以调用,但是写在其他.py文件中却可以
解决方案:
其实这是因为我创建一个类时错误地将__init__.py命名为__init__,于是之后 __init__.py 也被IDE认为时一个文本文档,于是在编辑时IDE不会运行其中的代码,但是在程序运行时却没有问题,这解释了为什么只有__init__.py中的函数无法引用
解决方案为
在 Preferences>Editor>File Types 中找到Text, 将里面的__init__.py删除
刷新以后,就没有问题了