可能在不同的函数中使用相同的变量

时间:2016-01-11 13:53:28

标签: python

我在python中编写我的第一个脚本,它是一个货币转换器。只有最后一个认为我需要但我无法让它发挥作用。

这里是剧本

print "                               Conversor de moeda"
print "                                      by DB \n"
def voltar():
     opcao=raw_input("--------------------------------------------------------------------------\nPara converter outro valor Inserir 1 \nPara voltar ao menu     Inserir 2")
     if opcao == "1":
          pass
     elif opcao == "2":
          pass
     else:
          voltar()     
def conversor():
     tipo_conv=raw_input("Inserir o número correspondente ao tipo de conversão desejado e carregar no enter: \n1 - Euros -> Dólares  \n2 - Dólares -> Euros \n3 - Euros -> Libras  \n4 - Libras -> Euros \n") 
     if tipo_conv == "1":
          qtd=input("Inserir quantidade de Euros a converter:")
          qtd2=qtd * 1.09212
          print qtd, "Euros =" , qtd2, "Dólares"
          voltar()
     elif tipo_conv == "2":
          qtd=input("Inserir quantidade de Dólares a converter:")
          qtd2=qtd * 0.915650
          print qtd, "Dólares =" , qtd2, "Euros"
          voltar()
     elif tipo_conv == "3":
          qtd=input("Inserir quantidade de Euros a converter:")
          qtd2=qtd * 0.751910 
          print qtd, "Euros =" , qtd2, "Libras"
          voltar()
     elif tipo_conv == "4":
          qtd=input("Inserir quantidade de Libras a converter:")
          qtd2=qtd * 1.32995
          print qtd, "Libras =" , qtd2, "Euros"
          voltar()
     else:
          print "Erro. Escolher uma das quatro opções disponíveis"
          conversor()
def voltar():
     opcao=raw_input("--------------------------------------------------------------------------\nPara converter outro valor - Inserir 1 \nPara voltar ao menu - Inserir 2 \n--------------------------------------------------------------------------\n")
     if opcao == "1":
          pass
     elif opcao == "2":
          conversor()
     else:
          voltar() 



conversor()

它首先要求用户从菜单中选择他们想要的转换类型。然后它询问他们想要转换的金额。之后,它询问他们是否想转换另一个金额或返回菜单。我回到菜单部分工作,但不能写部分回去转换另一数量的先前转换的硬币。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以让std::set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v3));使用默认参数,该参数将从conversor()发送给它。如果用户决定使用相同的货币返回转换,则会将该值发送回voltar(),并且会跳过有关使用哪种货币的问题,因为此值已包含在调用中。

您也不需要(也可能不应该)明确conversor()两次:

voltar()
相关问题