繁体   English   中英

使用每个项目中包含的特定值在项目列表中使用过滤

[英]using filtering in list of items using specific values contain in each item

我有一个清单,例如

list = ["1234doy001.tif", "1233doy001.tif", "1111doy002.tif", "2222doy002.tif"]

我想过滤列表,它只会给我包含 doy001 的值的列表。

想要的结果:

filter = ["1234doy001.tif", "1233doy001.tif"]

我在尝试

filter = [j for j in list if j == '*doy001*']

或者

filter = [j for j in list if j == 'doy001']

但没有成功。 它只返回一个空列表,如 []

请指教。

谢谢,-Leo

j == '*doy001*'检查j是否等于*doy001*

j == 'doy001'检查j是否等于doy001

这两种方法都是错误的。

使用in运算符;

filter = [j for j in list if 'doy001' in j]

使用字符串in您可以检查一个字符串是否包含在另一个字符串中

filter = [j for j in list if 'doy001' in j]

您可以使用 :

filter =   [j for j in l if 'doy001' in j]

filter = [j for j in l if (j.find('doy001')!= -1)]

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM