【发布时间】:2018-11-10 13:17:41
【问题描述】:
我正在尝试将 lambda 用于用例,但它似乎不起作用。以下是我尝试过的
下面是我使用的,在stackflow中我遇到很多人为此获得输出,但对我来说它没有
from __future__ import print_function
f = lambda x: print(x)
f()
f("Hello") ### now out put is shown expected is Hello output
f("Hello") is None ## I checked if its None and it is
>>> True
l = lambda x : sys.stdout.write(x)
l('hello') # this time its showing output as 5 instead of printing hello
>>> 5
我什至尝试了一些不使用 lambda 的东西,不幸的是,它也不起作用,结果没有
from functools import partial
spam = partial(print, 'Hello!')
spam()
spam() is None
>>> True
我从这个问题的最后一个答案assigning print function to variable得到这个
谁能帮助我我缺少什么以及为什么我无法打印字符串?
【问题讨论】:
-
这真是太棒了!
-
使用 Python3 l('hello') 在我的系统上输出 hello 并返回 5。使用 python2 我只得到没有整数返回值的 hello 输出。
-
请考虑详细说明您正在使用的环境。另外,如果你只是写一个简单的
print("Hello"),它是否正确显示? -
@tevemadar 是的 print("Hello") 打印 Hello。我在 jupyter notebook 里面使用
-
您是否可能以某种方式抑制错误消息?如果我将第一个 sn-p 放入单个单元格,则空的
f()调用会在本地和 jupyter.org/try 上为我引发TypeError。然后其余的行不会运行,但默认情况下错误消息非常明显。您是否尝试过重新启动内核?根据您的屏幕截图,您处于第 59-60 个输入,谁知道之前发生了。