Pythonのお勉強 Part4
■ このスレッドは過去ログ倉庫に格納されています
0407デフォルトの名無しさん
NGNGその用途では def を lambda で代用することはできないにゅ。
def の本文には文 (statement) を書くことができるのに対して
lambda の本文には式 (expression) しか書くことができない、
というのが理由にゅ。print は式ではなく文にゅ。
ちなみに print 文は sys.stdout.write() という式で代用できるにゅ。
>>> import sys
>>> f = lambda x: sys.stdout.write(str(x) + "\n")
>>> f("foo")
foo
>>>
でもこんなのは sys.stdout のアブユースもいいところにゅ。
良い子は素直に def するにゅ。
■ このスレッドは過去ログ倉庫に格納されています