python - 访问部分函数时我的代码出错
问题描述
当我使用我的部分功能时,我无法执行以下代码
from functools import partial
def f(a, b, c, d):
return 100 * a + 50 *b + 25 * c + d
g = partial(f, b=2)
print g(2, 4, 5)
解决方案
您不能使用除最后一个以外的位置参数进行部分处理。
如果您需要对 进行部分处理b
,则需要按名称传递c
和d
:
g = partial(f, b=2)
print(g(2, c=4, d=5))
lambda
如果您需要传递位置参数,或者使用(或包装函数)
推荐阅读
- ios - 在同一个应用程序中拥有导航控制器和标签栏控制器
- kotlin - Kotlin - 在 init 块中使用编译的正则表达式会引发空指针异常
- javascript - 文本输入的反应状态真的很慢
- javascript - 我无法使用 reactjs fetch 和 nodejs 作为 REST apis 项目读取服务器端的授权标头
- github - 文件夹上的 GitHub 箭头无法打开
- graphql - NestJS Fastify graphql e2e 测试失败
- css - Css 关键帧和动画无法在 Google Chrome 或 Firefox 上运行
- python - 将不和谐的机器人(python)上传到 Heroku:App 与 buildpack 错误不兼容(我知道它被问了很多)
- python-3.x - Python获取具有相同CSS类的html标签列表
- haskell - 使用 Haskell 'statistics' 包进行线性回归