如何使用python中的存根函数?

2024-06-26 08:38:40 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我在编程方面的前几节课,我遇到了一个问题,我真的不知道如何继续

def defeat_balrog(protagonist):    
    def spawn_balrog():
        """Spawns and returns a stubborn balrog"""
        pass
    def balrog_attack(balrog, person):
        """Returns an attack move from the balrog's repertoire"""
        pass
    cave_balrog = spawn_balrog()
    is_balrog_defeated = False
   yell(protagonist, 'You cannot pass!')
    while not is_balrog_defeated:
        current_attack = balrog_attack(cave_balrog, protagonist)
        if current_attack != None:
            take_defensive_action(protagonist, current_attack)
        yell(protagonist, 'YOU SHALL NOT PASS!')
        take_offensive_action(protagonist, cave_balrog)
        is_balrog_defeated = True
    return True

def take_defensive_action(attacked_entity, attack_move):
    """
    attacked_entity anticipates attack_move and defends himself.
    """
    pass
#my stubs here#
defeat_balrog('gandalf')

我应该确定剩余的函数,这些函数已经被很好地使用了,但是还没有创建存根,并从最后一行“我的存根在这里”开始填写。不确定如何开始或继续


Tags: andmoveisdefactionpasscurrentbalrog
1条回答
网友
1楼 · 发布于 2024-06-26 08:38:40

存根是一个存在但尚未定义有意义的业务逻辑的函数。例如:

def take_defensive_action(attacked_entity, attack_move):
    pass

注意这里的pass语句吗?这意味着您已经定义了一个有效的函数,但它什么也不做


将代码粘贴到PyCharm中,我看到以下函数以“黄色”突出显示(这意味着这些函数名具有Unresolved reference):

  • yell(protagonist, 'YOU SHALL NOT PASS!')

  • take_offensive_action(protagonist, cave_balrog)

清楚存根的含义后,您应该能够相应地定义这些函数,因为它们尚未定义。下面是yell的一个例子:

def yell(protagonist, message):
    pass

我把第二个留给你

相关问题 更多 >