2011-02-08 9 views
2

このスニペットのpythonic表現はありますか?Python、pythonic expression

# linux.cmd is a dict 
cmd = linux.cmd.get(k, k) 
if not cmd: 
    cmd = k 

linux.cmd.get[k]の値はFalseである可能性があります。

答えて

6

あなたが必要とするのは、最初の行です.siceはdict.get()への2番目のパラメータですが、これはデフォルト値です。 kがdictにない場合、その構文はkを返します。 if dictはfalseと評価される値を返すことができ、最初の行の最後に "または"を追加します。

+0

'linux.cmd.get [k]'の値は偽である可能性があります。 – Anycorn

+0

ああ、最初の行の最後に "または"を付け加えることができます。可能な限り虚偽の価値がないことを確実にすることが望ましいでしょう。 – Keith

+0

okありがとう、それは、同様にあなたの答えを変更することができますか?私は虚偽の値が必要なので、kも値です。 – Anycorn