加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 获取文件夹中的pdf文件列表

发布时间:2020-12-20 12:32:52 所属栏目:Python 来源:网络整理
导读:我想获取文件夹中所有pdf文件的名称列表我有我的 python脚本. 现在我有这个代码: files = [f for f in os.listdir('.') if os.path.isfile(f)]for f in files:e = (len(files) - 1) 问题是这段代码找到了文件夹中的所有文件(包括.py)所以我“修复”如果我的
我想获取文件夹中所有pdf文件的名称列表我有我的 python脚本.

现在我有这个代码:

files = [f for f in os.listdir('.') if os.path.isfile(f)]
for f in files:

e = (len(files) - 1)

问题是这段代码找到了文件夹中的所有文件(包括.py)所以我“修复”如果我的脚本是文件夹中的最后一个文件(zzzz.py),后来我减去列表的最后一个文件是我的脚本. PY.

我尝试了很多代码只能找到.pdf,但这越接近我.

解决方法

直接在目录上使用 glob查找所有pdf文件:

from os import path
from glob import glob  
def find_ext(dr,ext):
    return glob(path.join(dr,"*.{}".format(ext)))

演示:

In [2]: find_ext(".","py")
Out[2]: 
['./server.py','./new.py','./ffmpeg_split.py','./clean_download.py','./bad_script.py','./test.py','./settings.py']

如果你想要忽略大小写的选项:

from os import path
from glob import glob
def find_ext(dr,ext,ig_case=False):
    if ig_case:
        ext =  "".join(["[{}]".format(
                ch + ch.swapcase())) for ch in ext])
    return glob(path.join(dr,"*." + ext))

演示:

In [4]: find_ext(".","py",True)
Out[4]: 
['./server.py','./settings.py','./test.PY']

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读