2016-10-18 12 views
1

私は1つの出力を返す関数fooを持っているとしましょう。 私はその出力を関数fooの呼び出し元で使用しません。Pythonの関数からの出力を無視する最も標準的な方法は何ですか?

これを処理する最もエレガントな方法は何ですか?

r = foo() 
# r is not used anywhere later. 

foo()に電話するときは、割り当てをしないでください。 唯一のことは、私がこれを行うと、おそらく糸くず警告が出るということです。

foo() 
.... 
+3

あなたのソリューションは完璧です。出力には何も割り当てないでください。 –

+0

'foo'は何をするか返しますか?何かを返すメソッドは副作用を持ってはいけないと思う人もいます。ちょうど何かを印刷していますか? –

+0

出力を使用する必要がない場合は、使用しないでください。どうしたの? – TigerhawkT3

答えて

4

だけ出力無視:

foo() 

別のオプション(個人的に、私はあまり好きではありません) '_' 出力を変数に割り当てるです:

_ = foo() 

これは、返された値が無視される/不要な通常の方法であり、通常forループで使用されます。

lst = [1, 2, 3] 
for _ in lst: 
    # do something unrelated to the current element in the list 
    print 'hi' 
+0

最初と3番目のコードは大丈夫です。第二に、「私はあまり好きではない」と述べました。私はそれに同意し、それに言及する価値もないと考えています(複数の変数、例えば 'a、_ = items'を展開しない限り)。 '_'はDjangoの翻訳と衝突する可能性があるので推奨されなくなりました' _' – jamylak

+0

オプション#1はOPの#1が "おそらくリント警告"になるので、オプション#2しか言及しませんでした。 2番目のオプションですが、3番目のコードはオプション#2がどこに使われているかを表示するためのもので、どんな場合でも ''ジャンゴ ''の中で特別な意味を持っていませんでした。 – asherbar

関連する問題