• 如何用 Python 模糊搜索文件


    一、我的文件在哪里?

      1、告诉计算机文件在哪

      使用路径描述位置

        绝对路径——从根目录写到底

      内置模块OS

        路径

        目录

        文件

        其他系统操作

      2、描述文件的特征

      用条件判断来筛选

      3、对比后打印文件名

      用循环来实现逐个比对,素材链接:https://files.cnblogs.com/files/Lamfai/script_project1_files.zip

    import os
    # 路径(鼠标右键查看文件属性)
    path = 'C:/Users/Lamfai/Desktop/files'
    files = os.listdir(path)
    # 查找文件名字含有fish且以.png后缀的文件
    for f in files:
        if 'fish' in f and f.endswith('.png'):
            print('Found it!' + f)

     

      4、使用 Python 从这中筛选出符合这些特征的文件:
      (1) 除了 gif 类型之外的其他类型 ;
      (2) 名字中包含有关键词 “project30”或者“commercial”。

      素材链接:https://files.cnblogs.com/files/Lamfai/files.zip

    # 使用 Python 从这中筛选出符合这些特征的文件:
    # 1. 除了 gif 类型之外的其他类型
    # 2. 名字中包含有关键词 “project30”或者“commercial”
    
    import os
    # 路径(设置 path 变量,存储路径)
    path = 'C:/Users/Lamfai/Desktop/files'
    # 利用 os 模块中的 listdir 函数,将路径中的所有文件存储到一个 list 变量中。
    files = os.listdir(path)
    # 查找文件名字含有关键词 “project30”或者“commercial”且不以gif后缀的文件
    # 利用 for 语句浏览 list 变量中的所有元素
    for f in files:
        # 利用 if 语句判断文件名是否符合要求。其中, endswitch 函数用来判断一个字符串是否包含某个后缀。
        # 成员运算符 in 用来判断一个字符串是否包含某个子串。不同的条件用 and 或者 or 来连接。
        if (not f.endswith('.gif')) and ('project30' in f or 'commercial' in f):
            print('Found it!' + f)

     

      提示:

      1、出现报错 No such file or directory 怎么办?No such file or directory 的含义是不存在这个文件或路径,可能是以下几个原因造成的:

      (1)电脑上没有这个文件夹。文件夹的名字包括大小写需完全一致。

      (2)路径不对。绝对路径的写法有三种:

        ①正斜线。C:/Users/Lamfai/Desktop/files

        ②两个反斜线。C:\Users\Lamfai\Desktop\files

        ③在路径外面加 r 。r'C:UsersLamfaiDesktopfiles'

        参考020100_01——绝对路径与相对路径

      (3)没有在本地运行代码。

      (4)使用相对路径没有把 .py 文件放到要处理的文件夹内。

     

  • 相关阅读:
    docker-compose 命令不存在
    linux安装rabbitmq ssm集成rabbitmq
    tomcat参数错误 服务器400
    无限极分内 自联查询
    图片移入变大 点击图片切换 点击按钮显示图片
    js正则表达式基本书写
    随鼠标移动
    输入电话号码
    添加新句子
    窗口的弹出与关闭
  • 原文地址:https://www.cnblogs.com/Lamfai/p/9398358.html
Copyright © 2020-2023  润新知