python - 使用 glob 排除时间序列文件
问题描述
我在一个目录中的文件是跨越数年的月度数据,其字符为 0001-01-01、0001-02-01、...、0005-01-01、...、0010-12-01(yyyy-mm -dd) 在每个文件名的中间。
现在,我想排除 0001* 文件。如果我写sorted(glob.glob(mydirectory/filename-000[!1]*))
只给我 0002 ~~ 0009 文件,而 0010 文件不包括在内。
我应该怎么做才能只排除 0001* 文件?
如果我写sorted(glob.glob(mydirectory/filename-000[2-9]*))
的也只给了我 0002-0009 文件,我应该怎么做才能包含 0010* 文件?
我也试过filename-{000[2-9],00[10-12]}*
了,还是不行。
谢谢,
解决方案
只需将两个球加在一起。
files = glob.glob(mydirectory/filename-000[!1]*) + glob.glob(mydirectory/filename-0010*)
推荐阅读
- java - jersey 2.x 中的 Multipart:java 客户端找不到内容类型 multipart/form-data 类型的编写器
- visual-studio-code - IBM Blockchain Platform:创建智能合约时出错
- excel - 需要在返回之前获得最后一场比赛吗?
- php - Laravel 提交数据未定义索引时出错:
- c - 在我的代码中找不到“绝对丢失的内存”
- javascript - X 不是函数 - 如何修复
- c# - 是否可以像数字一样使用 String.Format 填充字符串?
- java - 我需要在启动时使 application-test.properties 路径 100% 唯一以进行 Spring Boot 单元测试
- postgresql - 有没有办法让 Delphi 的 FireDAC 识别 FireDAC 生成的 PostgreSQL 位置参数?
- c - 使用 mysql_stmt_prepare 时如何引用 char* 而不是使用 char[]