如何获取目录下的文件数(一行Python)

如何获取目录下的文件数(一行Python),第1张

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

可以使用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)])

import os

Path='目录全路径'

fout=open('输出文件名','w')

for Name in oslistdir(Path) :

(缩进) Pathname= ospathjoin(Path,Name)

(缩进) print>>fout,Pathname

foutclose()

纯手工写作,没有测试

# encoding:utf-8

import os

print ospathabspath("test")

使用ospathabspath方法可以输出文件夹的绝对路径。

参数里面要写相对路径,比如脚本和文件夹在同一路径,就直接写名字即可。如果文件夹在上一个目录,就写成"/test"。

其实从方法名也能看出来,是一个相对路径转绝对路径的方法。

import os

# Build paths inside the project like this: ospathjoin(BASE_DIR, )

BASE_DIR = ospathdirname(ospathdirname(ospathabspath(__file__)))

可以参考django的方式。注意,若获取路径的文件位于项目根目录中,则需要剥掉一层ospathdirname :

import os

# Build paths inside the project like this: ospathjoin(BASE_DIR, )

BASE_DIR = ospathdirname(ospathabspath(__file__))

for root,dirs,name in oswalk(""):

    for files in names:

        if files in ("1mp4","thumbpng"):

            newname=osbasename(root)

            extname=ospathsplitext(files)[-1]

            osrename(files,newname+extname)

以上就是关于如何获取目录下的文件数(一行Python)全部的内容,包括:如何获取目录下的文件数(一行Python)、python 获得指定目录下所有文件名 要求:linux下,使用Python2.7,获取第一层文件、文件夹、python 获取文件夹路径问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存