sys.path os.path

前言

写django 经常看见两个模块的使用,在此记录一下

区别

sys.path  是一个列表,是python 环境变量的搜索列表

os.path   是一个对象,有很多的关于路径的方法

sys.path  的使用

import sys
sys.path.append(’引用模块的地址‘)  

#或者
import sys
sys.path.insert(0, ‘引用模块的地址‘)  

sys.path是个列表,所以在末尾添加目录是很容易的,用sys.path.append就行了。当这个append执行完之后,新目录即时起效,以后的每次import操作都可能会检查这个目录。如同解决方案所示,可以选择用sys.path.insert(0,…)这样新添加的目录会优先于sys.path中的其他目录被import检查。

os.path 的使用

os.path.abspath(path)  #返回绝对路径
os.path.split(path     #将path分割成目录和文件名二元组返回
os.path.dirname(path)  #返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) #返回path最后的文件名
os.path.exists(path)   #如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path)    #如果path是绝对路径,返回True
os.path.isfile(path)   #如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path)    #如果path是一个存在的目录,则返回True。否则返回False
os.path.getatime(path) #返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) #返回path所指向的文件或者目录的最后修改时间
s.path.join(path1[, path2[, ...]])  #将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。
>>> os.path.join(‘c:\\‘, ‘csv‘, ‘test.csv‘)
‘c:\\csv\\test.csv‘
>>> os.path.join(‘windows\temp‘, ‘c:\\‘, ‘csv‘, ‘test.csv‘)
‘c:\\csv\\test.csv‘
>>> os.path.join(‘/home/aa‘,‘/home/aa/bb‘,‘/home/aa/bb/c‘)
‘/home/aa/bb/c‘  

总结

sys.path  添加的路径是暂时的,当前python 环境退出后此添加的路径就会消失

os.path.abspath(__file__)      为获取当前文件的绝对路径 ,此命令所在文件的绝对路径,包含文件
os.path.dirname()            为获取当前路径上一级的路径

django 中settings.py 的应用:

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

‘DIRS‘: [os.path.join(BASE_DIR, ‘templates‘)

原文地址:https://www.cnblogs.com/fanggege/p/10262099.html

时间: 2024-10-11 09:18:31

sys.path os.path的相关文章

os模块 os.stat('path/filename') os.path.dirname(path) os.path.exists(path)  os.path.join(path1[, path2[, ...]])

提供对操作系统进行调用的接口 1 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 2 os.chdir("dirname")  改变当前脚本工作目录:相当于shell下cd 3 os.curdir  返回当前目录: ('.') 4 os.pardir  获取当前目录的父目录字符串名:('..') 5 os.makedirs('dirname1/dirname2')    可生成多层递归目录 6 os.removedirs('dirname1')    若

python18 时间模块 系统模块(os,os.path) 项目开发目录规范

复习 '''1.跨文件夹导包 - 不用考虑包的情况下直接导入文件夹(包)下的具体模块 2.__name__: py自执行 '__main__' | py被导入执行 '模块名' 3.包:一系列模块的集合体,通过包内的__init__文件来管理包中所有模块提供给外界的名字 -- 存放所以模块的文件夹名就是包名 4.导包三件事:1)编译__init__文件的pyc2)执行__init__文件形成全局名称空间,作为包的全局名称空间,包能直接使用的名字全部是__init__文件中提供的3)在导包文件中形成

python os.path标准库基础学习1

#文件系统标准库学习import os,os.pathos.path#平台独立文件/文件名管理#以下给出一些常用的os模块下面使用的方法,如下:"""1:os.sep--路径各部分之间分隔符,如:/,\2:os.extsep 文件名与文件<扩展名>之间分隔符,如:.3:os.pardir 文件路径中表示目录树上一级的部分,如:..4:os.curdir 文件路径指示当前目录部分,如:.5:split()将函数分解成2部分:然后一个元组,这个元组的最后一个路径是第二

python学习笔记-os.path

os.path是python的一个内部组件用来操作文件的文件名,对文件名字符串进行解析. 在os模块中定义了一些变量名来帮助对文件名的处理主要有以下几个变量. os.sep:文件分隔符 os.pardir:上级目录标志符为'..' os.curdir:当前目录标识符为'.' os.extsep:文件的后缀名分割符. >>> print(os.sep) / >>> print(os.extsep) . >>> print(os.curdir) . >

python中os.path模块简介

1.python中获取当前工作目录 curDir = os.getcwd() os.getcwd()返回的是执行命令时所在的目录,而不是脚本本身所在的目录 2.os.path os.path.abspath(path)  #返回绝对路径 os.path.split(path)     #将path分割成目录和文件名二元组返回 os.path.dirname(path)  #返回path的目录.其实就是os.path.split(path)的第一个元素 os.path.basename(path)

python模块之os.path

对文件路径的操作 os.path.split(p)函数返回一个路径的目录名和文件名. os.path.splitext():分离文件名与扩展名 os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录. os.path.isabs(path):判断一个路径是否是绝对路径 os.path.exists()函数用来检验给出的路径是否真地存在 os.path.getsize(name):获得文件大小,如果name是目录返回0L os.path.getat

Python——os.path模块

Python 2.7.8 该模块实现了一些关于路径名的函数. os.path.abspath(path) 返回所给参数的绝对路径.  os.path.basename(path)  Return the base name of pathname path. This is the second element of the pair returned by passing path to the function split(). Note that the result of this fu

python标准库-os.path和glob学习

参考博客: http://www.cnblogs.com/vamei/archive/2012/09/05/2671198.html http://www.cnblogs.com/baiqi/p/3951506.html http://www.cnblogs.com/sunnyjiangjie/p/4207063.html 参考资料:Python 2.7.7 documentation 参考工具:http://translate.google.cn/ 设置path = '/home/vamei/

python os.path模块函数功能

1.os.path.abspath(path) 获取绝对路径,实际上等于os.getcwd()+path 2.os.path.basename(path)取path最后的文件或文件名.如果path以/结尾,那么就会返回空值:相对的有os.path.dirname(path),返回的是路径部分 3.os.path.commonprefix(list)返回list中,所有path共有的最长的路径. 4.os.path.exists(path)如果path存在返回True;如果path不存在,或者没有