首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >工厂职能咨询/解释

工厂职能咨询/解释
EN

Stack Overflow用户
提问于 2016-02-13 21:48:28
回答 1查看 72关注 0票数 0

我已经就熊选项提出了这个问题,但我不知道如何执行工厂功能部分:

( a)熊市期权有收益见图

我必须编写一个python函数,它返回收益的值。

代码语言:javascript
复制
def bear(S,K):
    if S <= K:
        value = K
    elif K < S and S < 2*K:
        value = 2*K - S
    else:
        value = 0
    return value

下一部分..。( b)“还编写了一个工厂函数,该函数返回一个变量的熊选项报酬函数,其中K是固定的。”

我找不到工厂函数的简单解释,我刚刚开始编写代码,我的笔记中还没有提到工厂函数。任何链接到网页,提示或解释将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-13 21:56:10

他们想要你做的是写一个返回另一个函数的函数,这个函数可以用来计算一个固定值K的bear(S, K)

代码语言:javascript
复制
def bear_for_k(K):
    return lambda S: bear(S, K)

演示:

代码语言:javascript
复制
>>> bear(21, 17)
13
>>> bear_for_k17 = bear_for_k(17)
>>> bear_for_k17(21)
13
>>> bear(112, 81)
50
>>> bear_for_k81 = bear_for_k(81)
>>> bear_for_k81(112)
50

编辑以回应评论:

尝试以下文件:

代码语言:javascript
复制
def bear(S,K):
    if S <= K:
        value = K
    elif K < S and S < 2*K:
        value = 2*K - S
    else:
        value = 0
    return value

def bear_for_k(K):
    return lambda S: bear(S, K)

#test:
print(bear_for_k(17)(21))

这将在Python2和Python3中打印13,没有错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35385705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档