python3 fnmatch和fnmatchcase

2023-05-16

你想使用 Unix Shell 中常用的通配符 (比如 .py , Dat[0-9].csv 等) 去匹配文本字符串,fnmatch 模块提供了两个函数—— fnmatch() 和 fnmatchcase() ,可以用来实现这样的匹配。用法如下:

# -*- coding: utf-8 -*-

# 你想使用 Unix Shell 中常用的通配符 (比如 *.py , Dat[0-9]*.csv 等) 去匹配文
# 本字符串

# fnmatch 模块提供了两个函数—— fnmatch() 和 fnmatchcase() ,可以用来实现
# 这样的匹配。用法如下:

# fnmatch() 函数使用底层操作系统的大小写敏感规则 (不同的系统是不一样的) 来
# 匹配模式

from fnmatch import fnmatch, fnmatchcase

print(fnmatch('foo.txt', '*.txt'))
print(fnmatch('foo.txt', '?oo.txt'))
print(fnmatch('Dat45.csv', 'Dat[0-9]*'))

names = ['Dat1.csv', 'Dat2.csv', 'config.ini', 'foo.py']
print([name for name in names if fnmatch(name, 'Dat*.csv')])

print(fnmatch('foo.txt', '*.TXT'))

# 如果你对这个区别很在意,可以使用 fnmatchcase() 来代替。它完全使用你的模
# 式大小写匹配。比如:

print(fnmatchcase('foo.txt', '*.TXT'))

# 这两个函数通常会被忽略的一个特性是在处理非文件名的字符串时候它们也是很有
# 用的。比如,假设你有一个街道地址的列表数据:

addresses = [
    '5412 N CLARK ST',
    '1060 W ADDISON ST',
    '1039 W GRANVILLE AVE',
    '2122 N CLARK ST',
    '4802 N BROADWAY',
]

print([addr for addr in addresses if fnmatchcase(addr, '* ST')])

print([addr for addr in addresses if fnmatchcase(addr, '54[0-9][0-9] *CLARK*')])

# fnmatch() 函数匹配能力介于简单的字符串方法和强大的正则表达式之间。如果在
# 数据处理操作中只需要简单的通配符就能完成的时候,这通常是一个比较合理的方案。






本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python3 fnmatch和fnmatchcase 的相关文章

  • (三)Python3 NLTK(Natural Language Toolkit)安装和下载的常见问题

    NLTK Python自然语言工具包 用于诸如标记化 词形还原 词干化 解析 POS标注等任务 该库具有几乎所有NLP任务的工具 1 安装nltk pip install nltk 不要像一开始我一样傻傻的以为pip完就结束啦 2 进入py
  • python_元组_1.07

    一 元组 1 定义 python的元组与列表类似 不同之处在于元组的元素一旦定义就不能修改 添加 删除 可以访问 元组使用小括号 列表使用方括号 元组创建很简单 只需要在括号中添加元素 并使用逗号隔开即可 course chinese ma
  • Python3之lambda表达式和三元运算符

    lambda表达式 lambda表达式 通常是在需要一个函数 但是又不想费神去命名一个函数的场合下使用 也就是指匿名函数 lambda是一个表达式而不是一个语句 lambda用来编写简单的函数 不会再重复利用的函数 而def用来处理强大的任
  • python3.6打包成exe可执行文件,已解决方案

    将python程序打包成exe可执行文件有多种方法 这里讲一种最简单最常用的方法 只需要使用pyinstaller命令即可 一 环境 Windows 7或10 x64 Python 3 6 1 二 需要包 pyinstaller 3 3 p
  • 解决Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“报错

    Microsoft Visual C 14 0 or greater is required Get it with Microsoft C Build Tools 具体报错如下 Building wheel for cyac pyproj
  • scrapy屏幕log日志输出保存到txt文本中

    在使用scrapy框架的时候 因为scrapy在屏幕上面输出的日志一直在跑 有些错误又抓不到 无奈只能先把log日志放在文件中 慢慢进行错误日志的分析 如图所示 我们需要设置的地方只在settings py文件夹中进行设置就可以了 LOG
  • 神经网络模型量化

    量化模型 Quantized Model 是一种模型加速 Model Acceleration 方法的总称 包括二值化网络 Binary Network 三值化网络 Ternary Network 深度压缩 Deep Compression
  • LeetCode 刷题记录14. 最长公共前缀

    题目描述 编写一个函数来查找字符串数组中的最长公共前缀 如果不存在公共前缀 返回空字符串 说明 示例 1 输入 strs flower flow flight 输出 fl 示例 2 输入 strs dog racecar car 输出 解释
  • Python项目:学生信息管理系统(完整版)

    本文是基于上一篇 python项目 学生信息管理系统 初版 进行了完善 并添加了新的功能 主要包括有 完善部分 输入错误 无数据查询等异常错误 新的功能 文件的操作 文件的读写 其中重点是对文本字符串的详细解析 关于整个解析拆解和重组详见代
  • python2.x脚本转换为python3.x脚本方法详细步骤与实践分享

    1 安装python3 x 2 设置python环境变更 将C Python36 Scripts C Python36 追加加到系统变更PATH中 注 C Python36为安装路径 若不一致请更换成你的安装路径 3 找到2to3 py脚本
  • selenium webdriver一种解决打开chrome浏览器的过程

    1 下载59或58版本的Chrome浏览器 下载地址 http www pc6 com SoftView SoftView 22726 html 2 下载对应的驱动 驱动下载地址如下 当前我使用的版本是2 32 http npm taoba
  • python3爬虫系列之使用requests爬取LOL英雄图片

    我们最终目的就是要把抓取到的图片保存到本地 所以先写一个保存图片的方法 可以保存任何二进制文件 注意在windows下文件命名包含 可能会发生错误 有的英雄皮肤名称确实包含 所以这里使用正则表达式替换下 方法包含文件路径 文件名称 文件内容
  • Opencv-python3,处理rtsp流视频-----踩坑总结+VideoCapture.get()详解:

    最近项目在用opencv处理rtsp流相机 中间也踩了很多坑 这里写篇博客帮助那些可能会遇到相似问题的同胞 注 我这里同时用到了四个相机 1 电脑同时连接多个相机后 之后去打开rtsp相机时 初次打开特别耗时 甚至打开失败 在Win10上需
  • Windows7(x64) 安装Python3.7.0

    日期 2018年8月8日 作者 Commas 注释 本文写Windows7 x64 安装Python3 7 0 讲述了基本的安装操作 同时也介绍了一些相关的基础知识 本文若有哪些地方写的有所纰漏 还望各位看客指出 谢谢 如果您想了解更多有关
  • python3: xpath的使用

    转 本文转自 https blog csdn net qq 36148847 article details 79167267 python 具有一些比较流行的解析库 例如 lxml 使用的是 XPath 语法 是大众普遍认为的网页文本信息
  • jquery ajax url中有中文,后端乱码的解决方法.txt

    参考 https zhidao baidu com question 2057437468670456147 html url类似 http localhost 8080 floorsNodes 风管 json 方法 在jquery aja
  • Python 一篇入门

    目录 Python 的简介与特点 Python支持多种编程风格 解释运行 跨平台 可扩展强 可嵌入 丰富的库 Python版本选择 Python开发环境搭建 认识Python解释器 快速入门 变量和赋值 动态类型 变量命名规则 认识 数字
  • python3 练习题100例 (十二)

    题目十二 打印出所有的 水仙花数 所谓 水仙花数 是指一个三位数 其各位数字立方和等于该数本身 例如 153是一个 水仙花数 因为153 1的三次方 5的三次方 3的三次方 usr bin env python3 coding utf 8
  • Python3 初学 DAY2

    num1 minute py minute 7 24 60 print minute num2 print py 注 显示颜色格式 033 显示方式 字体色 背景色m 033 0m 显示颜色参数 显示方式 效果 字体色 背景色 颜色描述 0
  • Python3 如何优雅地使用正则表达式(详解五)

    非捕获组命名组 精心设计的正则表达式可能会划分很多组 这些组不仅可以匹配相关的子串 还能够对正则表达式本身进行分组和结构化 在复杂的正则表达式中 由于有太多的组 因此通过组的序号来跟踪和使用会变得困难 有两个新的功能可以帮你解决这个问题 非

随机推荐

  • Springboot+Netty搭建MQTT协议的服务端(基础Demo)

    Netty是业界最流行的nio框架之一 xff0c 结合springboot可以满足快速开发 MQTT xff08 Message Queuing Telemetry Transport xff0c 消息队列遥测传输协议 xff09 xff
  • SpringBoot+Shiro+Jwt+Vue+elementUI实现前后端分离单体系统Demo

    记录一下使用SpringBoot集成Shiro框架和Jwt框架实现前后端分离Web项目的过程 xff0c 后端使用SpringBoot整合Shiro 43 Jwt auth0 xff0c 前端使用vue 43 elementUI框架 xff
  • Centos系统安装RabbitMQ消息中间件

    记录一下在centos7 x下面安装RabbitMQ消息中间件 RabbitMQ是一个开源而且遵循 AMQP协议实现的基于 Erlang语言编写 xff0c 因此安装RabbitMQ之前是需要部署安装Erlang环境的 先安装Erlang
  • SpringBoot+RXTXcomm实现Java串口通信 读取串口数据以及发送数据

    记录一下使用SpringBoot 43 RXTXcomm实现Java串口通信 xff0c 使用Java语言开发串口 xff0c 对串口进行读写操作 RXTXcomm jar这个包支持的系统较多 xff0c 但是更新太慢 xff0c 在win
  • Springboot+Netty搭建TCP服务端

    Netty是业界最流行的nio框架之一 xff0c 它具有功能强大 性能优异 可定制性和可扩展性的优点 Netty的优点 xff1a 1 API使用简单 xff0c 开发入门门槛低 2 功能十分强大 xff0c 预置多种编码解码功能 xff
  • Springboot+Netty搭建TCP客户端-多客户端

    之前搭建了一个Springboot 43 Netty服务端的应用 xff0c 既然有服务端 xff0c 自然也有客户端的应用 xff0c 现在搭建一个Springboot 43 Netty客户端的应用Demo程序 xff0c 多客户端方式
  • 机器学习中的凸和非凸优化问题

    题目 xff08 145 xff09 xff1a 机器学习中的优化问题 xff0c 哪些是凸优化问题 xff0c 哪些是非凸优化问题 xff1f 请各举一个例子 凸优化定义 凸优化问题 非凸优化问题 凸优化定义 xff1a 公式 geome
  • VMware workstation中rhel安装VMware tools失败

    切换登录用户为root即可 转载于 https www cnblogs com dazzleC p 10555809 html
  • Uniform convergence may be unable to explain generalization in deep learning

    本文价值 xff1a understand the limitations of u c based bounds cast doubt on the power of u c bounds to fully explain general
  • 调参之learning rate

    The learning rate is perhaps the most important hyperparameter If you have time to tune only one hyperparameter tune the
  • 调超参(lr,regularization parameter)经验整理

    Learning rate 最优值从1e 4到1e 1的数量级都碰到过 xff0c 原则大概是越简单的模型的learning rate可以越大一些 https blog csdn net weixin 44070747 article de
  • Dropout network, DropConnect network

    Notations input v v v output r r r weight parameter
  • Curriculum adversarial training

    Weakness of adversarial training overfit to the attack in use and hence does not generalize to test data Curriculum adve
  • Python处理中文语言——读取中文

    本文解决问题 xff1a 1 导入中文txt文本 xff0c 并转换为unicode 2 导入包含中文的py file 解决问题一 xff1a 导入中文txt文本 xff0c 并转换为unicode 基础概念 xff1a 1 unicode
  • C# WPF开源控件库HandyControl用法举例

    目录 概述 MessageBox用法举例 Button用法举例 Lable用法举例 Slider用法举例 TextBox用法举例 组合框ComboBox用法举例 源码下载 概述 HandyControl是一款免费开源的WPF控件库 xff0
  • python 等差数列生成器

    典型的迭代器模式作用很简单 遍历数据结构 不过 xff0c 即便不是从集合中获取元素 xff0c 而 是获取序列中即时生成的下一个值时 xff0c 也用得到这种基于方法的标准接口 例如 xff0c 内置的 range 函数用于生成有穷整数等
  • python 终止协程和异常处理

    协程中未处理的异常会向上冒泡 xff0c 传给 next 函数或 send 方法的调用方 xff08 即触发协程的对 象 xff09 下面示例举例说明如何使用之前博客示例中由装饰器定义的 averager 协程 未处理的异常会导致协程终止
  • centos7 下安装 nodejs

    源码包安装 下载安装包到 xff1a usr local 目录下 1 命令下载 wget https span class token punctuation span span class token operator span node
  • Ubuntu配置apt软件源

    清华大学开源镜像网站 xff08 帮助页面 xff09 https mirrors tuna tsinghua edu cn help AOSP 阿里云开源镜像网站 https opsx alibaba com mirror 网易开源镜像网
  • python3 fnmatch和fnmatchcase

    你想使用 Unix Shell 中常用的通配符 比如 py Dat 0 9 csv 等 去匹配文本字符串 xff0c fnmatch 模块提供了两个函数 fnmatch 和 fnmatchcase xff0c 可以用来实现这样的匹配 用法如