python基础(相对、绝对路径,模块存放及导入)
相对路径与绝对路径
相对路径:
相对于引用文件本身去定位被引用的文件地址,文件路径以当前文件所在文件夹为参考位置的路径就是相对路径,相对路径中常见的符号有.和.. . 表示在当前文件夹中 .. 表示在当前文件夹的上层文件夹中 例如:./abc.jpg ../我和老师.avi my.txt(省略了.) abc/nidaye/nidama/不能看.exe(省略了.)
绝对路径:
相对于磁盘的位置去定位文件的地址,文件路径以某个精确位置作为参考位置的路径就是绝对路径,绝对路径因环境不同,参考点也略有不同。
windows: 以某个盘符作为参考位置的路径
- C:/window/bow...
- D:/die/niang/jiaren.exe
linux: 以/(根)作为参照位置的路径
- /etc/host
- /var/apache/..
url(网址): 以服务器地址作为参照位置的路径
- http://www.itxdl.cn/python/zhaosheng/teacher.php
- https://www.taobao.com/search/wawa.html
- ftp://192.168.0.1/python/zuoye/11/os.md
模块的存放
如果不想自己新建自定义的模块文件夹,可以将我们自定义的模块存放到 python 目录中的\Lib\site-packages中。
搜索路径就是python在加载模块时候的查找路径
1.获取当前模块的搜索路径
import sys sys.path 获取当前搜索路径的列表
2.将自定义的路径添加到列表中
sys.path.append(自定义路径)
例:
导入不是同级目录下的文件时的做法(以下以start.py文件导入index.py为例):
import os, sys
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
sys.path.append(BASE_DIR)
from conf import index
index.say_hi()
例:
以下以bin.py文件导入main.py为例):
import sys,os
Base_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(Base_DIR)
from my_module import main
if __name__ = '__main__':
main.run()
例:
下面以文件夹1114/forend/f1.py文件导入文件夹1114/c.py文件,而同级目录1114/forend存在同名的c.py文件,系统就会优先找到同级目录下的文件。
当导入不同级下的同名文件时,在搜索路径列表最前面insert插入路径。系统会优先找到上层路径中的文件就不会继续往下找了。
命名文件夹名时不能和文件名重复,否则系统识别不了。