为了账号安全,请及时绑定邮箱和手机立即绑定

函数不返回变量值

函数不返回变量值

莫回无 2022-06-14 16:26:14
我正在创建一个问答代码,我需要问题函数来返回 resposta_usuario 值,但它没有发生问答游戏代码perguntas = open('perguntas.txt','r')respostas = open('respostas.txt','r')respostas_linha = respostas.readlines()c = 0score = 0def pergunta():    #Mostra a pergunta guardada no perguntas.txt e retorna a resposta do usuário    for linhas in perguntas:        if linhas == '\n':            resposta_usuario = input('Qual sua resposta?: ')            return resposta_usuario     <------ THE PROBLEM IS HERE         else:           print (linhas)def verificar(resposta_usuario):    if resposta_usuario == respostas_linha[c]:        print('Resposta Correta')        c=+c        score = score + 10        pergunta()    else:        print('Fim de jogo!')        print('Tente novamente')pergunta()print(resposta_usuario)我期望 resposta_usuario 值的输出,但实际输出是NameError:未定义名称“user_response”
查看完整描述

2 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

您在函数内部创建变量,因此它的范围仅在函数内部可用,函数外部的代码无法看到它或通过 nae 引用它。您的函数返回值,但您不存储返回值。所以要么打印将打印返回值的函数调用


print(pergunta())

或将函数的返回值存储在函数外范围内的变量中


resposta_usuario = pergunta()

print(resposta_usuario)


查看完整回答
反对 回复 2022-06-14
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

您需要打印函数的返回值。resposta_usuario在您使用它的范围内未定义:

print(pergunta())


查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信