python - 舍入 lambda 函数

标签 python python-3.x lambda

我正在尝试创建一个 lambda 函数,它将对传递给它的值进行四舍五入,并指定小数位数

我做了以下内容

c = lambda x: round(x, dp)

其中 dp 已指定

但是,尝试调用它会出现以下错误

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <lambda>
TypeError: 'int' object is not callable

当我打字时

c(23.2323332345435)

我可能半梦半醒,但我很确定这就是创建一个简单的 lambda 函数的方式,而且我不明白为什么它不起作用。

我尝试用括号括起来,但没有成功

最佳答案

如果您在定义 lambda 之前或之后意外重写了 round,就会发生这种情况:

>>> c = lambda x: round(x, 5)
>>> c(34.44)
34.44
>>> round=12
>>> c(34.44)
Traceback (most recent call last):
  File "<string>", line 301, in runcode
  File "<interactive input>", line 1, in <module>
  File "<interactive input>", line 1, in <lambda>
TypeError: 'int' object is not callable
>>> 

关于python - 舍入 lambda 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43139968/

相关文章:

Python if 语句返回

python - 如何使用 smtplib 查看电子邮件中的文本文件和图像文件

python - 在 Python 中字节对象相对于字符串对象有哪些优势?

python - Python While 循环的问题

php - 如何将 PHP 闭包(lambda 函数)保存到 $this->var 中并稍后从同一类的另一个方法调用它?

python - 无法使用 Confluent Elasticsearch 接收器连接器将 Kafka 主题数据转换为结构化 JSON

python - 如何在 Python 中处理一小部分数据?

Python; If 语句、For 循环、文件读取

ruby - 在 Ruby 中让一个类继承 Proc

clojure - Clojure 中的匿名宏