pycharm无法导入本地模块的解决方式


Posted in Python onFebruary 12, 2020

最近学习python的django,需要导入本地的view模块,参考一些别人导入包的方法

import sys
sys.path.append('C:\\Users\\hhua\\Desktop')#括号中的内容为A所在的目录
importA.Demo1#不能加.py否则会报错(错误为没有这个文件A.Demo1.py)

但是不论用相对路径导入还是绝对路径导入,运行都会出错,但是我又用命令行试了一遍,发现命令行中可以,而且打印出包路径(print(xxx.__file__)没有重名的包,而且路径也都对,所以楼主认为是pycharm出了问题,后来网上搜索发现是因为pycharm中搜索包时都是从根目录查找,所以有时文件多了就会混乱,需要把当前文件夹指定为sorce目录即可。具体操作如下:(图片源于https://stackoverflow.com/questions/21236824/unresolved-reference-issue-in-pycharm)

pycharm无法导入本地模块的解决方式

下面有几种其它的方法,个人觉得最后一种最好用

import sys
sys.path

系统环境是一个list,可以将自己需要的库添加进入,例如mysql库,hive库等等。有三种方式添加,均验证通过:

1.临时添加,在一个shell窗口中

import sys
sys.path
sys.path.append(path)

但退出该shell窗口,即失效

2.使用pth文件永久添加

使用pth文件,在 site-packages 文件中创建.pth文件,将模块的路径写进去,一行一个路径,以下是一个示例,pth文件也可以使用注释:

# .pth file for the my project(这行是注释)
E:\DjangoWord
E:\DjangoWord\mysite
E:\DjangoWord\mysite\polls

这个不失为一个好的方法,但存在管理上的问题,而且不能在不同的python版本中共享

3.使用PYTHONPATH环境变量(最好用)

使用PYTHONPATH环境变量,在这个环境变量中输入相关的路径,不同的路径之间用逗号(英文的!)分开,如果PYTHONPATH变量还不存在,可以创建它!

pycharm无法导入本地模块的解决方式

路径会自动加入到sys.path中,而且可以在不同的python版本中共享,应该是一样较为方便的方法

以上这篇pycharm无法导入本地模块的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python抓取模板之家的CSS模板
Mar 16 Python
Python中的进程分支fork和exec详解
Apr 11 Python
举例讲解Linux系统下Python调用系统Shell的方法
Nov 07 Python
Python守护线程用法实例
Jun 23 Python
Python实现多级目录压缩与解压文件的方法
Sep 01 Python
python中将\\uxxxx转换为Unicode字符串的方法
Sep 06 Python
Python实现查找最小的k个数示例【两种解法】
Jan 08 Python
python 寻找离散序列极值点的方法
Jul 10 Python
Tensorflow实现部分参数梯度更新操作
Jan 23 Python
Python super()函数使用及多重继承
May 06 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
Jun 24 Python
Python3.9.1中使用split()的处理方法(推荐)
Feb 07 Python
解决pycharm中导入自己写的.py函数出错问题
Feb 12 #Python
解决pycharm同一目录下无法import其他文件
Feb 12 #Python
适合Python初学者的一些编程技巧
Feb 12 #Python
完美解决pycharm导入自己写的py文件爆红问题
Feb 12 #Python
python3实现raspberry pi(树莓派)4驱小车控制程序
Feb 12 #Python
python3实现网页版raspberry pi(树莓派)小车控制
Feb 12 #Python
解决Pycharm 导入其他文件夹源码的2种方法
Feb 12 #Python
You might like
239军机修复记
2021/03/02 无线电
PHP实现文件安全下载
2006/10/09 PHP
如何将数据从文本导入到mysql
2006/10/09 PHP
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
Laravel中错误与异常处理的用法示例
2018/09/16 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
PHP设计模式(八)装饰器模式Decorator实例详解【结构型】
2020/05/02 PHP
基于jQuery的message插件实现右下角弹出消息框
2011/01/11 Javascript
jquery 跨域访问问题解决方法(笔记)
2011/06/08 Javascript
js数组操作常用方法
2014/05/08 Javascript
原生javascript实现拖动元素示例代码
2014/09/01 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
浅谈JavaScript中的apply/call/bind和this的使用
2017/02/26 Javascript
从零开始学习Node.js系列教程之SQLite3和MongoDB用法分析
2017/04/13 Javascript
Node.js使用gm拼装sprite图片
2017/07/04 Javascript
vue实现点击图片放大效果
2017/08/15 Javascript
vue配置文件实现代理v2版本的方法
2019/06/21 Javascript
Python实现删除Android工程中的冗余字符串
2015/01/19 Python
在Django的模型和公用函数中使用惰性翻译对象
2015/07/27 Python
python类的继承实例详解
2017/03/30 Python
Django管理员账号和密码忘记的完美解决方法
2018/12/06 Python
Python之lambda匿名函数及map和filter的用法
2019/03/05 Python
Python合并同一个文件夹下所有PDF文件的方法
2019/03/11 Python
python opencv实现图像边缘检测
2019/04/29 Python
python之当你发现QTimer不能用时的解决方法
2019/06/21 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
django 解决扩展自带User表遇到的问题
2020/05/14 Python
使用HTML5加载音频和视频的实现代码
2020/11/30 HTML / CSS
支部鉴定材料
2014/06/02 职场文书
自强自立美德少年事迹材料
2014/08/16 职场文书
信贷客户经理岗位职责
2015/04/09 职场文书
怎样写工作总结啊!
2019/06/18 职场文书
Java中的继承、多态以及封装
2022/04/11 Java/Android
Windows server 2016服务器基本设置
2022/08/14 Servers