2017-02-20 9 views
-5

get関数で返されたlista値がnoneの場合、どのようにデフォルトのリストを入力できますか?Python get命令なし

はあなたが変数に「デフォルト値」を割り当てるためにor operatorを使用することができます

def GETLISTA(): 
    iptvset = int(addon.getSetting('iptvset')) + 1 
    lista = addon.getSetting('lista' + str(iptvset)) 
    return lista 

lista = GETLISTA() 
params = getParams() 
url = lista 
+2

は[よう]へようこそ。 [ask]を確認してください。あなたは何を意味するのかを指定する必要があります...ユーザーの入力を求めたいですか?どの 'get'関数? 'null'はPythonで有効な値ではありません...おそらく' None'を意味しますか? – TemporalWolf

+2

あなたは精緻化してみることができますか?時には、何かを理解しようとしている間に長い間、コードを見ていると、他の人がそのコンテキストを理解していないことを忘れてしまうことがあります。 [最小、完全で検証可能な例](http://stackoverflow.com/help/mcve)を提供してください。 –

答えて

0

ありがとうございます。これは、a or ba if a else bに相当するために機能します。したがって、あなたはGETLISTA()は空のリスト[]、または任意の他の「falsy」の値に評価された場合、これはまたsome_defaultを使用すること、しかし

lista = GETLISTA() or some_default 

お知らせを、書くことができ、それはNoneを返していない場合のみです。これはあなたのケースでは問題になるかもしれません。あるいは、三項演算子を使用

lista = GETLISTA() 
lista = some_default if lista is None else lista 

または単純ifチェック(若干長いが、三元より私見明確):

lista = GETLISTA() 
if lista is None: 
    lista = some_default 
+0

ありがとうございました:lista = GETLISTA()または 'http:// **********************' ' – user3310922