Python获取文件信息

Python获取文件信息,第1张

#-- coding: utf-8 --

import os

#已知文件名的情况下,可以用这个函数

def getFileInfo(filepath):

info = {}

if ospathisfile(filepath):

info['TimeCreated'] = ospathgetctime(filepath)

info['TimeModified'] = ospathgetatime(filepath)

info['Size'] = ospathgetsize(filepath)

return info

# 如果只知道文件根目录,但是不知道具体的文件路径,

# 可以先用oslistdir获得文件和文件夹列表

#-------------------分界线----------------------

# 这是回答你的第二个问题。如何找到一个字符串中指定两个字符中间的字符串

# 这里用的是正则表达式

import re

special = "+$^[](){}|\/" #正则表达式中会出现的特殊字符

# 输入参数为原始字符,leftmark表示左边的分隔符号,rightmark表示右边的分隔符号

#函数返回在leftmark和rightmark中间的内容,可能匹配满足不止一次,没有找到就返回空

def matchpattern(str1,leftmark,rightmark):

lf,rt = leftmark,rightmark

#如果需要匹配的字符在正则表达式中时特殊字符,需要给予转义

if leftmark in special:

lf = '\%s'%leftmark

if rightmark in special:

rt = '\%s'%rightmark

pattern = recompile(r''+lf + '{0,}'+ rt)

matched = refindall(pattern,str1)

result = []

if matched:

#如果匹配成功了,就去头去尾,直接取中间的部分

for m in matched:

s = mreplace(leftmark, '')

s = sreplace(rightmark, '')

resultappend(s)

return result

else:

return None

if __name__ == '__main__':

print matchpattern("#abcsdfs%sdfsdf",'%','')

python获取目录树需要用到oswalk函数,以下是一个例子。

import os

 

rootDir = 'd:\\assa'

for dirName, subdirList, fileList in oswalk(rootDir):

print('Folder: %s' % dirName)

for fname in fileList:

print('\t%s' % fname)

来自:网页链接

from PIL import Image

import ospath

import glob

def convertjpg(jpgfile,outdir,width=1280,height=720):

    img=Imageopen(jpgfile)   

    new_img=imgresize((width,height),ImageBILINEAR)   

    new_imgsave(ospathjoin(outdir,ospathbasename(jpgfile)))

for jpgfile in globglob("D:/python/jpg"):

    convertjpg(jpgfile,"D:/newfile")

convertjpg调用时可以有四个参数,如convertjpg(jpgfile,"D:/newfile",800,600)

Image open了jpg用完后要不要close?

如果想把该目录下所有的文件都统计出来,包括子目录、子目录的子目录。。。

可以使用oswalk来找出目录下所有的文件

import os

print sum([len(x) for _, _, x in oswalk(ospathdirname("test"))])

#test是目录名

oswalk会递归遍历指定目录下的文件,返回值分别为当前文件夹完整路径,当前文件夹中的文件夹和文件夹中的文件。我们只需要文件,所以其他的都不取出来了,直接使用"_"占位就行了。

如果只是想统计出当前目录下的文件,不包括子目录的。就使用oslistdir,只统计是文件的个数:

len([x for x in oslistdir(ospathdirname(__file__)) if ospathisfile(x)])

以上就是关于Python获取文件信息全部的内容,包括:Python获取文件信息、python如何获取目录树、Python 读取文件夹将里面的图片处理成想要的大小并保存在个指定位置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10214438.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存