2016-11-18 23 views
1

は考える:特定の要素を除いたPythonのリストを印刷するには?

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

どのように、リスト内のキー 'デフォルト' を印刷することなくI

print commands['onboarding'].keys() 

のですか?私は私の実装でそれを隠そうとしています。ボーナスは、両方のバージョンのPythonで説明がある場合は指摘します。

ありがとうございました!あなたが適用されるすべてのキーからリストを作成し、printコールで解凍

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

:あなたは次の両方のバージョンで作業を得ることができますfrom __future__ import print_function

答えて

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

私の男!ありがとうございました。今、数時間見回していますが、迅速な対応は非常に高く評価されています。 – Reciever80

1

あなたの場合。もちろん、出力にリストが必要な場合は、解凍しないでください(リスト内包の最初から*を削除してください)。

1

あなたもそうPythonの2.7のための

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

ようfilterを使用するか、このようなPythonでできる3

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

は、Python 3では、filter反復可能filterオブジェクトと同様ではないリストを返しますPython 2、だからあなたはそれをラップする必要がありますlist()

関連する問題