pycharm命令行运行代码,提示报错找不到No module named '模块名'

问题

pycharm命令行运行代码,提示报错找不到No module named ‘hero’

问题原因

pycharm界面执行的时候会把模块包加入到systempath里边去 但命令行不会,所以识别不到包

解决方案

在执行文件中的上方加上代码

dir_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

sys.path.append(dir_path)

找不到的包在执行文件外面的层数决定了os.path.dirname嵌套的次数。