beanwong413
2017-03-13 03:08
采纳率: 100%
浏览 3.8k
已采纳

python中,使用lambda表达式定义函数,调用与返回值的问题

#使用lambda表达式定义一个函数

f = (lambda x: map(sys.stdout.write, x))
#调用f
t = f(['a', '1'])
#返回
a1
#调用f
f(['a', '1'])
#返回
a1[None, None]
#请问第二次调用时为什么会返回a1[None, None],原理是什么

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • oyljerry 2017-03-13 03:39
    已采纳

    不要加括号,不然你的f会是一个生成器

     f = lambda x: map(sys.stdout.write, x)
    
    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题