查询包含 _ 的字符串时出现问题 - Python
我有一个文件列表
DIRLIST = ['201008190000_15201_NC.GZ', '201008190000_15202_NC.GZ',
'201008190000_16203_NC.GZ', '201008200000_15201_NC.GZ', '201008200000_15202_NC.GZ',
'201008200000_16203_NC.GZ',]
,我想挑选出某些文件 - 比如说其中包含 16203 的两个文件。
我的第一个想法是在 for 循环中使用 stringsplit,但是 stringsplit 除了字符串中的 _ 之外没有给我任何东西 - 而且我有点卡住了。
有什么想法吗?
I have a list of files
DIRLIST = ['201008190000_15201_NC.GZ', '201008190000_15202_NC.GZ',
'201008190000_16203_NC.GZ', '201008200000_15201_NC.GZ', '201008200000_15202_NC.GZ',
'201008200000_16203_NC.GZ',]
and I want to pick out certain files - say the two with 16203 in them.
My first thought was to use stringsplit in a for loop, but stringsplit doesn't give me anything beyond the _ in the strings - and I'm a little stuck.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
如果您知道文件名的格式(日期时间、下划线、id、下划线、字母、点、GZ),则使用以下命令:
另一个命题(使用简单的
if '16203' in dir
将使文件名像201008162030_15201_NC_GZ
也通过,这不是你想要的。If you know the format of the filenames (datetime, underscore, id, underscore, letters, dot, GZ), then use this:
The other proposition (with simple
if '16203' in dir
will let filenames like201008162030_15201_NC_GZ
through too, which is not what you want.不确定你所说的“除了字符串中的 _ 之外没有给我任何东西”是什么意思
如果你所需要的只是像你所说的一个简单的条件,那么彼得的建议会很好,并且比你尝试使用 split 的任何东西都要好。
Not sure what you mean by 'doesn't give me anything beyond the _ in the strings'
If all you need is a simple condition like you said, then Peter's suggestion will do just fine and is better that anything you would try with split.