【发布时间】:2018-11-30 15:41:08
【问题描述】:
我有一个包含以下字符串的列表:
total 71708
-rw-rw-rw- 1 gpatwprd tmwdprd 221 Nov 19 12:36 20181116.Something name.6781773.CSV
-rw-rw-rw- 1 gpatwprd tmwdprd 221 Nov 19 12:36 20171116.Something name.67885.CSV
我想提取:
- 仅从 20181116 开始的文件名(或任何其他数据,这是一个动态数字)
- 仅包含 .CSV 和 .XLSX 的文件名
请注意,文件名的长度是可变的。
如何在 python 3 中做到这一点?
【问题讨论】:
-
开始于还是开始于?是否应该提取 20181116 之后的任何日期?
-
如果文件扩展名为 .csv 或 .xlsx 且名称确实以 20181116 开头,则仅包含整个文件名
-
只需遍历列表的每个元素,然后拆分字符串并检查相应元素是否以所需字符串开头,下一个元素是否以 CSV 或 XLSX 结尾
-
顺便说一句,解析
ls的输出通常被认为是不好的做法,因为它变化很大,但如果您的脚本只在您自己的机器上运行,它是安全的。但是为什么不使用标准 Python 库函数来获取文件名呢?它更简单。 -
是的,这似乎不是最佳选择。因此我问了以下问题:stackoverflow.com/questions/53560846/…
标签: python python-3.x