我用pycharm跑代码的时候遇到了这个问题,明明没错但是就是显示路径问题,原博主用vscode跑的代码说没有遇到过这种问题。按博主建议要么改用绝对路径,要么把那个文件复制到根目录里运行,但是最后我发现不是相对路径代码的问题,奇奇怪怪的,改了几次还是改到了最原始的代码,运行一下就出来了,玄学!
绝对路径 就是文件的真正存在的路径,是指从硬盘的根目录(盘符)开始,进行一级级目录指向文件。路径中包含域名
举例:D:\QQ\Plugin\Com.Tencent.Advertisement\Bin
相对路径 就是以当前文件为基准进行一级级目录指向被引用的资源文件。
../ 表示当前文件所在的目录的上一级目录
./ 表示当前文件所在的目录(可以省略)
/ 表示当前站点的根目录(域名映射的硬盘目录)
举例
·根目录
·1
·image.jpg
·2
·3
·page2.html
·page2image.jpg
·page1.html
1、文件在当前目录
Page2.html访问Page2Image.jpg (./可以省略)
<img src=”./Page2Image.jpg”>或者<img src=”Page2Image. jpg”>
2、文件在上一层目录
Page1.html访问1下的Image.jpg
<img src=”../1/Image.jpg”>
Page2.html访问1下的Image.jpg
<img src=”../../1/Image.jpg”>
3、文件在下一层目录
Page1.html访问3文件夹下的Page2.html(./可以省略)
<img src=” ./3/Page2.html”><img src=” 3/Page2.html”>
4、根目录表示法,任何页面访问1下的Image.jpg图片
<img src=”/1/Image.jpg”>
总结
相对路径比较灵活,只要层级结构没有变化,比如上面的2和3文件夹只是换了个名字,那么不影响寻址,但是绝对路径就要好好确认下路径有没有问题了
前端开发或者你的程序需要在不同的设备中来回移动的话,必须用相对路径,因为你换设备就会改变绝对路径,就类似于你用u盘的时候,你的盘符都不是固定的一个道理
绝对路径就是写死的路径,缺点是换设备会出现路径找不到问题
相对路径就是灵活的路径,优点是不会因为设备更换出现路径问题