当前位置: 代码迷 >> 综合 >> python 获取文件大小,正则匹配文件名中的浮点数
  详细解决方案

python 获取文件大小,正则匹配文件名中的浮点数

热度:5   发布时间:2024-02-19 15:54:24.0

1、python  获取os.path.getsize 获取文件大小,StrOfSzize用于 获取选取文件大小单位 


def StrOfSize(size):'''递归实现,精确为最大单位值 + 小数点后三位'''def strofsize(integer, remainder, level):if integer >= 1024:remainder = integer % 1024integer //= 1024level += 1return strofsize(integer, remainder, level)else:return integer, remainder, levelunits = ['B', 'KB', 'MB', 'GB', 'TB', 'PB']integer, remainder, level = strofsize(size, 0, 0)if level+1 > len(units):level = -1return ( '{}.{:>03d} {}'.format(integer, remainder, units[level]) )paths = []   #存放文件夹(含子文件夹)下所有文件的路径及名称for root, dirs, files in os.walk("/content/sample_data/16"):for file in files:if file.endswith("txt"):paths.append(os.path.join(root, file)) #支持中文名称
paths.sort(key=lambda x:float((x.split('/')[-1])[:-4]))#路径排序,拓展名为wav,后三位
for i in paths:# inputdata=np.loadtxt(i)# cycles=sum(inputdata[:,1])# if cycles<150000:#   print(i)SIZE=os.path.getsize(i)if SIZE>10000000:print()print(SIZE,"——",StrOfSize(os.path.getsize(datapath+"/"+i.split('/')[-1][:-4]+".wav")),StrOfSize(SIZE)," ",i)

2、正则表达式匹配文件名浮点数字 

import re
print(re.search("(\d+\.\d+)","/content/zz/1366203600.298674.txt").group(0))

 

 

  相关解决方案