解决Python中导入自己写的类,被划红线,但不影响执行的问题
作者:最小森林 发布时间:2021-07-11 19:10:29
1. 错误描述
之前在学习Python的过程中,导入自己写的包文件时,与之相关的方法等都会被划红线,但并不影响代码执行,如图:
看着红线确实有点强迫症,并且在这个过程当时,当使用该文件里的方法时不会自动提示方法名,只能靠手全部输入,这种容易造成手误,对于小白特别容易降低编写效率
2. 原因分析
pycharm中,source root概念非常重要,当你在代码中写相对路径的时候,就是以source root为起点进行查询。
而pycharm中,当前的项目文件夹 是默认的source root,当你使用import语句导入模块时,Pycharm默认在project folder中寻找;
所以当你在project folder下的某个subfolder导入某个同样定义在这个subfolder中的模块时,会出现导入错误。
3. 解决方案
问题已经找到了,pycharm不会将当前文件目录自动加入自己的sourse_path。所以我们要告诉pycharm就行了。下面有两种方法(3.1和3.2),都能比较方便的解决问题:
3.1 加一个“点”
第一种方法非常简单,只需要在models前加一个点。表示,告诉pycharm我要引用的模块位于同级目录。
例如:
from models import className
修改为:
from .models import className
就可以不报错了
3.2 添加“当前目录”
第二种方法:
既然,pycharm不会将当前文件目录自动加入自己的sourse_path。那么我们就手动告诉他。
右键目录名 点击make_directory as --> sources path 将当前工作的文件夹加入source_path就可以了。步骤如下图:
来源:https://blog.csdn.net/u012052268/article/details/88077677
猜你喜欢
- 前言最近在重构一个复选框组件,原型是select2这个jQuery插件, 有兴趣的可以去搜下,封装的很好,但是并不能满足业务所有需求,最要命
- openpyxl是一个第三方库,可以处理xlsx格式的Excel文件。pip install openpyxl安装。读取Excel文件需要导
- 虽然我只是把豆瓣当作一个纪录工具来用,纪录下自己看过的电影、听过的音乐、读过的书籍,我几乎不关注豆瓣上的任何影评、乐评、音衣服之类的内容,但
- Git的使用基本教程git安装官网 msysgit.github.io(百度搜索git下载地址也行)下载git安装(路径选择你的路径或者默认
- 人工智能和区块链诞生至今已经有了十几年,当这些技术出现时,人们都说他们会改变世界,但至今为止,这两项技术对现实的影响依然有限。从技术上看人工
- 前言在新建完一个MVC项目之后,你会发现整个整个项目结构中存在有两个web.config文件,如下图所示:这两个配置文件,一个位于项目的根目
- 利用Python将多份excel表格整理成一份表格,抛弃过去逐份打开复制粘贴的方式。直接附上代码:import xlrd import xl
- help函数是python的一个内置函数,在python基础知识中介绍过什么是内置函数,它是python自带的函数,任何时候都可以被使。he
- 实验原理模拟电脑通过串口与Arduino开发板通信,并通过网页实现简单交互开发环境1、Windows102、Python3.103、Prot
- 前面一篇文章有说过,利用scrapy来爬取图片,是为了对图片数据进行分类而收集数据。本篇文章就是利用上次爬取的图片数据,根据图片的颜色特征来
- 之前我们在写js代码的时候都知道可以用var定义全局变量和局部变量,也可以省略var,而且在非严格模式下不会报错,但是并不知道两
- 一、LeetCode——125.验证回文串1.问题描述给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:
- 一、普通进度条import sysimport time# 普通进度条# 在代码迭代运行中进行统计计算,并使用格式化字符串输出代码运行进度d
- MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式。标准的SQL模式匹
- numpy打乱数组或打乱矩阵行使用numpy.random.shuffle函数,能够打乱ndarray对象的第一维度,对于数组来说,就是整体
- window.onload=function(){ pd(11);} function pd(number) { if(number>
- 找到自己的mysql数据库的安装位置,如下 C:\Program Files\MySQL\MySQL Server 5.1,在它里面有个的m
- 目录常规思路更快捷的方法使用方法对数据库的表进行重命名可以使用以下原生sql:RENAME TABLE old_table TO new_t
- 系统环境:VC6 + Python-2.5.41、下载Python-2.5.4源码。2、解压,打开D:\Python-2.5.4\PC\VC
- BN原理、作用函数参数讲解BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, tr