所以我的列表可能会在将来更新,但我不想打印出所有结果。我想限制打印到不包含" +"的项目的列表。签名或"。",只留下我想要的名字的文件夹。
myList = ['+Map_Design', 'for_pl', 'land_comm', 'FILE LIST - Shortcut (2).lnk',
'SiteLocatorMap.mxd', 'Thumbs.db']
我尝试过使用...
[x for x in myList if not '.' in x]
和
[x for x in myList if not . in x]
没有运气。这是我试图删除(。,+)或我使用错误代码的字符的问题。
我正在寻找的是一个仅包含[' for_pl',' land_comm']的列表。
答案 0 :(得分:2)
我猜测你的完整代码是
myList = ['+Map_Design', 'for_pl', 'land_comm', 'FILE LIST - Shortcut (2).lnk', 'SiteLocatorMap.mxd', 'Thumbs.db']
[x for x in myList if not '.' in x]
[x for x in myList if not '+' in x]
print myList
自己,列表推导不会修改你重复的事情。尝试将结果分配回myList
myList = ['+Map_Design', 'for_pl', 'land_comm', 'FILE LIST - Shortcut (2).lnk', 'SiteLocatorMap.mxd', 'Thumbs.db']
myList = [x for x in myList if not '.' in x]
myList = [x for x in myList if not '+' in x]
print myList
结果:
['for_pl', 'land_comm']
奖金样式提示:'.' not in x
比not '.' in x
更惯用。