概述
os.path包
os.path包主要是处理路径字符串,比如说’/home/vamei/doc/file.txt’,提取出有用信息。
import os.path
path = '/home/vamei/doc/file.txt'
print(os.path.basename(path)) # 'file.txt' (查询路径中包含的文件名)
print(os.path.dirname(path)) # '/home/vamei/doc' 查询路径中包含的目录
info = os.path.split(path) # ('/home/vamei/doc', 'file.txt') 将路径分割成目录和文件名两个部分,放在一个元组中返回
path2 = os.path.join('/', 'home', 'vamei', 'doc', 'file1.txt') # '/home/vamei/doc/file1.txt' 使用目录名和文件名构成一个路径字符串
os.path.splitext('/path/to/file.txt') #('/path/to/file', '.txt')
p_list = [path, path2]
print(os.path.commonprefix(p_list)) # 查询多个路径的共同部分
os.path还可以查询文件的相关信息(metadata)。文件的相关信息不存储在文件内部,而是由操作系统维护的,关于文件的一些信息(比如文件类型,大小,修改时间)。
import os.path
path = '/home/vamei/doc/file.txt'
print(os.path.exists(path)) # 查询文件是否存在
if not os.path.exists(path):
os.mkdir(path)
print(os.path.getsize(path)) # 查询文件大小
print(os.path.getatime(path)) # 查询文件上一次读取的时间
print(os.path.getmtime(path)) # 查询文件上一次修改的时间
print(os.path.isfile(path)) # 路径是否指向常规文件
print(os.path.isdir(path)) # 路径是否指向目录文件
glob包
glob包最常用的方法只有一个, glob.glob()
。该方法的功能与Linux中的ls相似(参看Linux文件管理命令),接受一个Linux式的文件名格式表达式(filename pattern expression),列出所有符合该表达式的文件(与正则表达式类似),将所有文件名放在一个表中返回。所以glob.glob()是一个查询目录下文件的好方法。
import glob
print(glob.glob('/home/vamei/*'))
print(glob.glob('/home/vamei/*.txt')) # 查找以.txt结尾的文件
os
os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。这个列表以字母顺序。 它不包括 ‘.’ 和’…’ 即使它在文件夹中。
只支持在 Unix, Windows 下使用。
os.listdir(path)
import os, sys
# 打开文件
path = "/var/www/html/"
dirs = os.listdir( path )
# 输出所有文件和文件夹
for file in dirs:
print file
结果:
test.htm
stamp
faq.htm
_vti_txt
robots.txt
itemlisting
resumelisting
writing_effective_resume.htm
advertisebusiness.htm
papers
resume
最后
以上就是超级铃铛为你收集整理的python标准库:路径与文件(os.path&glob)os.path包glob包os的全部内容,希望文章能够帮你解决python标准库:路径与文件(os.path&glob)os.path包glob包os所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复