pythoncurdir
#encoding:utf-8
importos
printos.path.abspath("test")
使用os.path.abspath方法可以输出文件夹的绝对路径。
参数里面要写相对路径,比如脚本和文件夹在同一路径,就直接写名字即可。如果文件夹在上一个目录,就写成"../test"。
其实从方法名也能看出来,是一个相对路径转绝对路径的方法。
② python有哪些模块
Python是一门非常高级的编程语言,内置了许多标准模块,比如:sys、os、datetime等。
os模块
os.getcwd() # 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") # 改变当前脚本工作目录;相当于shell下cd
os.curdir # 返回当前目录: ('.')
os.pardir # 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') # 可生成多层递归目录
os.removedirs('dirname1') # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') # 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') # # 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() # 删除一个文件
os.rename("oldname","newname") # 重命名文件/目录
os.stat('path/filename') # 获取文件/目录信息
os.sep # 输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
os.linesep # 输出当前平台使用的行终止符,win下为" ",Linux下为" "
os.pathsep # 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") # 运行shell命令,直接显示
os.environ # 获取系统环境变量
os.path.abspath(path) # 返回path规范化的绝对路径
os.path.split(path) # 将path分割成目录和文件名二元组返回
os.path.dirname(path) # 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) #
返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(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.join(path1[, path2[, ...]]) # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) # 返回path的大小
sys模块
sys.argv # 命令行参数List,第一个元素是程序本身路径
sys.exit(n) # 退出程序,正常退出时exit(0)
sys.version # 获取Python解释程序的版本信息
sys.maxint # 最大的Int值
sys.path # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform # 返回操作系统平台名称
datetime模块
datetime.today()返回一个表示当前本期日期时间的datetime对象
datetime.now([tz])返回指定时区日期时间的datetime对象,如果不指定tz参数则结果同上
datetime.utcnow()返回当前utc日期时间的datetime对象
datetime.fromtimestamp(timestamp[, tz])根据指定的时间戳创建一个datetime对象
datetime.utcfromtimestamp(timestamp)根据指定的时间戳创建一个datetime对象
datetime.strptime(date_str, format)将时间字符串转换为datetime对象
③ python 怎么查看当前路径
先要装载 os模块:
import os
print os.getcwd()
或者
print os.path.abspath(os.curdir)
print os.path.abspath('.')
就可以了。
( . 代表当前的路径,.. 代表当前路径的上一级路径。这在UNIX和Windows系统意义是类似的。
例如:
以Winodws系统为例:
当前路径是F:\Temp, 则 . 的绝对路径就是F:\Temp
.. 的绝对路径就是F:\
)
要获得上级目录的路径也很简单,print os.path.abspath('..')就可以了。
要改变当前路径,os.chdir(path) 就可以了 path里填要改变到的目录,例如os.chdir('D:\Program Files')
这样大部分的文件操作现在是相对于D:\Program Files 来了,例如fobj = open('Hello.txt'),实际会打开D:\Program Files\Hello.txt文件。
不要通过sys.argv[0]获得当前路径,那是不正确的。sys.argv[0] 是当前执行的Python脚本的文件名,不一定是当前的路径。
希望对你有所帮助。
④ python 中os.pardir什么意思
os.pardir- 路径组件,意味着将目录树向上遍历一级(例如,“ ..”)。
os.path 函数可用于将表示文件名的字符串解析为其组成部分。重要的是要意识到这些功能不依赖于实际存在的路径。路径解析取决于以下定义的一些 os 变量:
1、os.sep- 路径部分之间的分隔符。
2、os.extsep- 文件名和文件“扩展名”之间的分隔符(例如,“ .”)。
3、os.curdir- 引用当前目录的路径组件(例如,“ .”)。
(4)pythoncurdir扩展阅读
os.getcwd(): 获取当前工作目录,即当前python脚本工作的目录路径。
os.chdir("dirname") :改变当前脚本工作目录;相当于shell下cd。
os.curdir 返回当前目录: ('.')。
os.pardir 获取当前目录的父目录字符串名:('..')。
os.makedirs('dirname1/dirname2') :可生成多层递归目录。
os.removedirs('dirname1'): 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推。
⑤ python语言,如何在已有的文件夹下创建新的文件夹
可以使用os包的mkdir函数来创建新的文件夹。
mkdir函数接受一个参数path指定新建文件夹的路径,示例代码如下:
importos
cur_dir='D:curdir'
folder_name=''
ifos.path.isdir(cur_dir):
os.mkdir(os.path.join(cur_dir,folder_name))
为了确保已有的文件夹真实存在,示例代码中使用了os.path.isdir函数判断已有文件夹的路径是否正确。
新的文件夹的路径可以由os.path.join函数,将已有文件夹的路径和新建文件夹文件名连接起来得到。由于Windows操作系统和Linux操作系统,路径的连接符不同,使用os.path.join连接能够确保同时在不同的操作系统中正常工作。
⑥ python怎么用递归遍历多层目录树
#coding=utf-8
search_id = '69d0'
search_list = [{'id':'0337', 'name':'de', 'parent_id':'None'},
{'id':'2ddf', 'name':'se', 'parent_id':'None'},
{'id':'3010', 'name':'12', 'parent_id':'69d0'},
{'id':'3119', 'name':'121', 'parent_id':'3010'},
{'id':'3229', 'name':'1211', 'parent_id':'3119'},
{'id':'3d37', 'name':'14', 'parent_id':'69d0'},
{'id':'58c8', 'name':'11', 'parent_id':'69d0'},
{'id':'63b9', 'name':'a','parent_id':'None'},
{'id':'954c', 'name':'n', 'parent_id':'63b9'},
{'id':'69d0', 'name':'1', 'parent_id':'954c'},
{'id':'d2f9', 'name':'13', 'parent_id':'69d0'},
{'id':'defb', 'name':'test', 'parent_id':'None'}]
search_ids = []
#例如如果search_id = '69d0' search_ids=[3010,3d37,58c8,d2f9,3119,3229]
def search_pid(pid,id_list,id_results):
for id in id_list:
if id['id'] not in id_results:
if id['parent_id'] in pid:
id_results.append(id['id'])
pid.append(id['id'])
search_pid(pid,id_list,id_results)
search_pid([search_id],search_list,search_ids)
print search_ids
⑦ Python的os库的使用
python os库有很多和操作系统相关的功能。
其实不仅仅如此,os库中还有很多和文件,路径,执行系统命令相关的。
下面是os模块常用的方法.
1.os.sep 可以取代操作系统特定的路径分割符
2.os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'
3.os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径
4.os.getenv() 用来读取环境变量
5.os.putenv() 用来设置环境变量
6.os.listdir() 返回指定目录下的所有文件和目录名
7os.remove() 函数用来删除一个文件
8.os.system() 函数用来运行shell命令
9.os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用'/r/n',Linux使用'/n'而Mac使用'/r'。
10.os.path.split() 函数返回一个路径的目录名和文件名
11.os.path.isfile() 检验给出的路径是一个文件
12os.path.isdir() 检验给出的路径是一个目录
13.os.path.existe() 函数用来检验给出的路径是否真地存在
14.os.listdir(dirname) 列出dirname下的目录和文件
15.os.getcwd() 获得当前工作目录
16.os.curdir 返回当前目录('.')
17.os.chdir(dirname) 改变工作目录到dirname
os.path都是和路径指定的文件,目录,和路径字符串有关系的函数
os.path.isdir(name) 判断name是不是一个目录,name不是目录就返回false
os.path.isfile(name) 判断name是不是一个文件,不存在name也返回false
os.path.exists(name) 判断是否存在文件或目录name
os.path.getsize(name) 获得文件大小,如果name是目录返回0L
os.path.abspath(name) 获得绝对路径
os.path.normpath(path) 规范path字符串形式
os.path.split(name) 分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)
os.path.splitext() 分离文件名与扩展名
os.path.join(path,name) 连接目录与文件名或目录
os.path.basename(path) 返回文件名
os.path.dirname(path) 返回文件路径