首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >每次使用speakRemember()函数时,如何停止运行记忆体()函数的代码?

每次使用speakRemember()函数时,如何停止运行记忆体()函数的代码?
EN

Stack Overflow用户
提问于 2021-12-20 09:24:35
回答 2查看 30关注 0票数 -2

我有一个记忆系统的代码:

代码语言:javascript
运行
复制
def remember():
    speak('What do you want me to remember sir?')
    toRemember = input('What should I remember? ')
    speak('ok, i will remember: ' + toRemember)
    return toRemember


def speakRemember():
    toRemember = remember()
    speak('this is what you told mke to remember: '+toRemember)

每当我触发speakRemember()函数,并且它从gets ()获取数据时,它就会运行gets()函数。我认为错误在这里:toRemember = remember(),但我不明白为什么它会运行另一个函数。如果有人知道这是错误还是人为错误,请告诉我!

(没有错误)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-12-20 10:05:47

关于我的评论,我要详细说明:

代码语言:javascript
运行
复制
class Remember:
    def __init__(self, to_remember=None):
        self.to_remember = to_remember
    def __call__(self):
        self.to_remember = input('What Should I remember? ')
    def __str__(self):
        return f"this is what you told me to remember: {toRemember}"
    def __repr__(self):
        retrun self.__str__
    # If you want to print response while setting a value:
     def remember_this(self):
         print('What do you want me to remember sir?')
         self()
         print(f"ok, I will remember: {self.to_remember}")



remember = Remember()
remember()
>> What Should I remember? This
print(remember.to_remember)
>>> 'This'
print(remember)
>>> this is what you told me to remember: This
remember.remember_this()
>>> What do you want me to remember sir?
>>> What Should I remember? That
>>> ok, I will remember: That
print(remember)
>>> this is what you told me to remember: That

如果调用类的实例(在本例中为remember),则使用__call__函数。您还可以创建不同的函数来更改类属性。

__str____repr__函数用于方便地打印字符串中的值。

票数 1
EN

Stack Overflow用户

发布于 2021-12-20 09:30:21

你是对的。在编写toRemember = remember()时,将调用when ()函数。toRemember的值将是remember()函数的返回值。编写此语句时,将执行该函数,最终返回值将是toRemember的值。

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

https://stackoverflow.com/questions/70419727

复制
相关文章

相似问题

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