文章目录
我先讲方法再将细节
一、run窗口与terminal窗口导入包的不同
run窗口下导包,直接导导导
terminal窗口下报错,No moudle named …
二、解决方法
需要在你要到的包加下面两行代码,注意append里面几个.根据你文件的路径来定,比如我的utils.py与run在同一路径下,run是test.py的上一级目录append里就写1个点.,如果是上两级目录就写两个点. .
import sys
sys.path.append('.')
三、run窗口与terminal窗口读取文件的不同
读取不同文件夹路径往往是我们经常遇到的问题,比如我在test.py种想要读取data中的数据,使用绝对路径或相对路径读取,在run窗口运行这都是没问题的
如果我在终端运行,命令行不会识别你的. ./
四、解决方法
在你的主文件夹下建立一个utils.py,再改一些代码,主要使用os库
五、__ file __ ,os.path.dirname,os.path.join
os模块菜鸟教程
utils里的主要两个函数os.path.dirname,os.path.join
我们可以先打印一下流程:
1.__ file __
__ file __ 指当前文件所(这里指utils.py)在位置,这里由于使用相对路径调用,所以显示的是.\utils.py。
2.os.path.dirname
返回文件的路径所以返回.
在举个例子:
3.os.path.join
连接两个或更多的路径名组件
所以函数返回的是.\data,好理解吧,给个方法链接链接
再使用
得到.\data\Lochee.csv