python篇---pycharm运行正常,但命令行执行提示module不存在的多种解决方式

pycharm运行正常,但命令行执行提示module不存在的多种解决方式(全)

解决方法

向执行代码中添加根目录路径,一般添加在头部

  • 方法一:写死绝对路径
python 复制代码
import sys
sys.path.append('xxx/xxx/xxx/')
  • 方法二:使用os获取
python 复制代码
os.path.dirname获取目录,此处就是获取目录的父目录。如果目录层级更多,就需要多加一层 os.path.dirname

import os,sys
project_root =  os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(project_root)
  • 方法三:os获取+/.../

如果层级更多,则需要多加".../" ,看起来比方法二更加简洁点

python 复制代码
import os,sys
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/../')
  • 方法四,直接加到环境变量path中

输入以下命令

python 复制代码
export PYTHONPATH=$PYTHONPATH:/xxx/

export 命令输入只临时生效,重新连接会失效,或者直接修改环境配置~/.bashrc等配置加上这句可以实现永久解决问题,如果这个不能实现,考虑自己手动去执行添加

相关推荐
赴生-18 分钟前
Liunx 操作系统 进程概念(上)
linux
binqian33 分钟前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌40 分钟前
Shell编程——if条件语句
linux·运维·shell
晓窗科技44 分钟前
口碑好的AI基座服务商
大数据·人工智能·python
Dawn-bit1 小时前
Linux 运维基础扩展:跳板机、堡垒机与物理服务器全流程
linux·运维·服务器·云计算·运维开发
小灰灰搞电子1 小时前
Python 信号量详解:并发控制实战
python·信号量
新时代牛马1 小时前
Linux 定时任务:crontab、anacron 与systemd timer
linux·运维·服务器
新时代牛马1 小时前
cyclictest 毛刺从哪来?从ftrace、latencytop、perf到IRQ/调度延迟定位
android·开发语言·python·kotlin
mounter6251 小时前
Linux 7.2 引入更灵活的块设备错误注入机制
linux·linux kernel·kernel·disk·error injection
Dxy12393102162 小时前
Python如何结合AI解决数据分析问题
人工智能·python·数据分析