为什么pycharm运行正常,到终端命令行就报错

为什么pycharm运行正常,到终端命令行就报错

问题1

http://img1.sycdn.imooc.com//climg/60178fbb093e301728801602.jpg

http://img1.sycdn.imooc.com//climg/60178ff209cecee228801602.jpg

http://img1.sycdn.imooc.com//climg/601790b1097b2f5b16500512.jpg

问题2:

有个公共文件发fn.py

我想把fn.py 放在入口文件app.py

让其他的文件比如mysql_db,等等 ,都能加载fn文件 , 而不用每个文件都手动import,请问怎么解决

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好!

1、在pycharm中同学将db文件设置了Source Root,执行时不会报错,但在终端中执行时会从根目录下查找,找不到user_dao,因此报错了。

​__init__文件中导包命令应该是from db.user_dao import UserDao。

http://img1.sycdn.imooc.com//climg/601796c209f4758b05400107.jpg

2、其他文件加载fn需要在每个文件中导入才可以

祝:学习愉快!

  • qq_浮沉_34 提问者 #1
    老师,Source Root,是什么呀,加不加有什么区别呢
    2021-02-01 16:22:22
  • 好帮手慕美 回复 提问者 qq_浮沉_34 #2

    同学,你好!

    1、Source Root会把db文件标记为源文件,在导包时会从该文件夹下查找,因此同学在导包时不加db也是可以导入的

    http://img1.sycdn.imooc.com//climg/6017c07f09394bc904540100.jpg

    2、不加的话在导入userdao时会从根目录下查找,根目录下是没有user_dao的,会报同学截图中的错误

    http://img1.sycdn.imooc.com//climg/6017c08d095c412808520169.jpg

    祝:学习愉快!

    2021-02-01 16:50:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师