从python中的列表项中删除模式

Pyt*_*zer 0 python list

我的清单有15个项目,所有这些项目最后都包含"_new"这个词.所以我想创建一个文件夹,其中包含没有'_new'的项目名称.怎么做?

Mar*_*ers 7

使用列表推导删除最后4个字符:

[name[:-4] for name in list_of_names]
Run Code Online (Sandbox Code Playgroud)

如果最后只包含一些名称_new,请使用条件表达式:

[name[:-4] if name.endswith('_new') else name for name in list_of_names]
Run Code Online (Sandbox Code Playgroud)

  • @sheh:不,因为`.rstrip()`需要*set*的字符.它将从末尾以任何顺序删除*all*`_`,`n`,`e`和`w`字符.例如,尝试使用''know_when_we'`. (2认同)