假设:
commands = dict(
onboarding = dict(
default = "default",
status = "APPROVED",
date = "11/18/15"
)
team = dict(
members = getTeamMembers()
)
我如何
print commands['onboarding'].keys()
没有在列表中打印键'default'?我试图在我的实现中隐藏它。如果在两个版本的python中都有解释,则可以获得奖励积分。
谢谢!
答案 0 :(得分:2)
print [key for key in commands['onboarding'] if key != 'default']
答案 1 :(得分:1)
如果您from __future__ import print_function
,您可以使用以下两个版本进行以下操作:
d=commands['onboarding']
print(*[d[i] for i in d if i != 'default'])
您可以从所有适用的密钥构建列表,然后在print
调用中解压缩。当然,如果您需要输出中的列表,请不要解压缩(即从列表推导的开头删除*
)。
答案 2 :(得分:1)
您也可以像Python 2.7一样使用filter
print filter(lambda key: key != 'default', commands['onboarding'])
或类似于Python 3
print(list(filter(lambda key: key != 'default', commands['onboarding'])))
在Python 3中,filter
返回一个可迭代的filter
对象而不是Python 2中的列表,因此您必须将其包装在list()