如何打印一个python列表,去掉一个特定的元素?

2024-05-14 00:37:35 发布

您现在位置:Python中文网/ 问答频道 /正文

给予:

commands = dict(
   onboarding = dict(
      default = "default",
      status = "APPROVED",
      date = "11/18/15"
   )
   team = dict(
       members = getTeamMembers()
)  

我怎么办

^{pr2}$

不打印列表中的“默认”键?我试图在我的实现中隐藏这一点。如果两个版本的python都有解释,那就加分。在

谢谢你!在


Tags: 版本default列表datestatusdictteamcommands
3条回答

您也可以像python2.7那样使用filter

print filter(lambda key: key != 'default', commands['onboarding'])

或者像Python3中的这个

^{pr2}$

在python3中,filter返回一个iterable filter对象,而不是python2中的列表,因此必须将其包装在list()

print [key for key in commands['onboarding'] if key != 'default']

如果您from __future__ import print_function您可以使用这两个版本获得以下功能:

d=commands['onboarding']
print(*[d[i] for i in d if i != 'default'])

在这里,您从所有适用的键构建一个列表,并在print调用中解压。当然,如果您在输出中需要一个列表,请不要解压缩(即从列表理解的开头删除*)。在

相关问题 更多 >