万无一失的Python计算器

礼节

我正在写一个可以处理两个不同数字的基本计算器。到目前为止,我设法编写了一个可行的原型,但是在进行分割和万无一失的同时,我遇到了许多问题,因此我将它们分开发布。


如果用户未提供合格的运算符,我希望程序重复该问题。那就是我现在的代码:

def optn_query():
    print("Hulk can different things with number!")
    print("YOU!")
    optn = input("What Hulk do with number?! ")
    return optn

我是否使用if语句确定输入是否正确?


我也将return optn放在那里,因此下一个函数(优美地称为hulk_math)不会在途中失败,但是它仍然可以:

Traceback (most recent call last):
  File "hulc.py", line 57, in <module>
    main()
  File "hulc.py", line 13, in main
    hulk_math()
  File "hulc.py", line 41, in hulk_math
    if optn == "+":
NameError: name 'optn' is not defined

我应该怎么做才能解决这个问题?

这是hulk_math()本身:

def hulk_math():
    if optn == "+":
        result = num1 + num2
        print("Hulk ADDS!!! Hulk thinks it's {0}!".format(result))
    elif optn == "-":
        result = num1 - num2
        print("Hulk SUBTRACTS!!! Hulk thinks it's {0}!".format(result))
    elif optn == "*":
        result = num1 * num2
        print("Hulk MULTIPLIES!!! Hulk thinks it's {0}!".format(result))
    elif optn == "/":
        result = num1 / num2
        print("Hulk DIVIDES!!! Hulk thinks it's {0}!".format(result))
    main()
帕特里克·豪

您实际上需要调用函数:

def hulk_math():
    optn = optn_query()
    #The rest of your code

另外,除非num1num2在代码的其他地方定义,并且它们在的范围内,否则hulk_math您的程序也将在那里失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

万无一失的分叉?

来自分类Dev

万无一失的分叉?

来自分类Dev

Java中OutOfmemory的万无一失的检测

来自分类Dev

MVC万无一失的验证'Sys is not defined'

来自分类Dev

MVC重新绑定万无一失的验证

来自分类Dev

相同字段上的万无一失的多个验证器

来自分类Dev

如果使用枚举,则需要使用万无一失

来自分类Dev

万无一失的副本超载:如何不照顾应该默认副本的成员?

来自分类Dev

Maven的万无一失找不到ForkedBooter类

来自分类Dev

无法执行Maven的万无一失,插件,但只能用circleci

来自分类Dev

确保变量存储/回送所有字符的万无一失的方法?

来自分类Dev

使用扫描仪的万无一失的用户输入程序

来自分类Dev

MVC万无一失的验证要求IfFalse错误地返回错误

来自分类Dev

Maven-万无一失。如何调整报表的详细程度?

来自分类Dev

使用JUnit平台 - 神火提供商的Java 9模块Maven的万无一失,插件

来自分类Dev

在CentOS上设置主机名和域的万无一失/正确的方法是什么

来自分类Dev

使用万无一失和requiredif来验证字符串字段

来自分类Dev

有没有一种万无一失的方法来给系统足够的时间在运行copytree之前删除文件夹

来自分类Dev

一种万无一失的方法来检测是否启用了开发人员选项?

来自分类Dev

有没有一种万无一失的方法来检测我的声卡是否支持5.1环绕声?

来自分类Dev

是否有一种简单的万无一失的方法来将命令从Ubuntu转换为Debian,反之亦然?

来自分类Dev

是否有一种万无一失的简便方法来确定哪些debs意味着ubuntu将在debian上安装

来自分类Dev

在 Win10 中,是否有一种万无一失的方法来发现哪个应用程序正在显示给定的弹出窗口?

来自分类Dev

无法加载的魔力 '测试' - org.apache.maven.plugins:Maven的万无一失,插件:3.0.0-M1:测试

来自分类Dev

Python素数计算器

来自分类Dev

Python计算器问题

来自分类Dev

税收计算器-Python

来自分类Dev

Python编码计算器

来自分类Dev

Python降雨计算器

Related 相关文章

  1. 1

    万无一失的分叉?

  2. 2

    万无一失的分叉?

  3. 3

    Java中OutOfmemory的万无一失的检测

  4. 4

    MVC万无一失的验证'Sys is not defined'

  5. 5

    MVC重新绑定万无一失的验证

  6. 6

    相同字段上的万无一失的多个验证器

  7. 7

    如果使用枚举,则需要使用万无一失

  8. 8

    万无一失的副本超载:如何不照顾应该默认副本的成员?

  9. 9

    Maven的万无一失找不到ForkedBooter类

  10. 10

    无法执行Maven的万无一失,插件,但只能用circleci

  11. 11

    确保变量存储/回送所有字符的万无一失的方法?

  12. 12

    使用扫描仪的万无一失的用户输入程序

  13. 13

    MVC万无一失的验证要求IfFalse错误地返回错误

  14. 14

    Maven-万无一失。如何调整报表的详细程度?

  15. 15

    使用JUnit平台 - 神火提供商的Java 9模块Maven的万无一失,插件

  16. 16

    在CentOS上设置主机名和域的万无一失/正确的方法是什么

  17. 17

    使用万无一失和requiredif来验证字符串字段

  18. 18

    有没有一种万无一失的方法来给系统足够的时间在运行copytree之前删除文件夹

  19. 19

    一种万无一失的方法来检测是否启用了开发人员选项?

  20. 20

    有没有一种万无一失的方法来检测我的声卡是否支持5.1环绕声?

  21. 21

    是否有一种简单的万无一失的方法来将命令从Ubuntu转换为Debian,反之亦然?

  22. 22

    是否有一种万无一失的简便方法来确定哪些debs意味着ubuntu将在debian上安装

  23. 23

    在 Win10 中,是否有一种万无一失的方法来发现哪个应用程序正在显示给定的弹出窗口?

  24. 24

    无法加载的魔力 '测试' - org.apache.maven.plugins:Maven的万无一失,插件:3.0.0-M1:测试

  25. 25

    Python素数计算器

  26. 26

    Python计算器问题

  27. 27

    税收计算器-Python

  28. 28

    Python编码计算器

  29. 29

    Python降雨计算器

热门标签

归档