如何在python 3中的函数内替换变量的值

史提芬

我是python的新手,可能使它复杂化了。我无法替换函数中变量中的值时遇到问题。相反,它似乎只是在增加新的价值。使用此功能时,如果选择1或2,则应该执行某些操作,如果选择其他任何内容,则应说这不是选项,然后重试。如果在选择有效选项之前选择了错误选项,则输出如下:

Select Option

[1] Option 1
[2] Option 2

You selected Option 1
1
9
7
6

因此,与其将我的变量的值替换为1并清除以前的值,不如将其添加进去。这是我的代码:

def testfunc():

    testvar = input('Select Option\n\n[1] Option 1\n[2] Option 2\n\n    >')
    if testvar in ('1', 'Option 1', 'option 1'):
        print("\nYou selected Option 1")
    elif testvar in ('2', 'Option 2', 'option 2'):
        print("\nYou Selected Option 2")
    else:
        print("\n\nThat is not an option, please select another option")
        testfunc()
    print(testvar)

testfunc()

如果我可以请人解释为什么它存储多个值以及如何防止这种情况,我将非常感激。谢谢!

紫罗兰色

您的问题是您使用递归返回并获得另一个值(testfunc()testfunc()自身内部的调用)。

如果输入无效值,它将再次调用该函数,并保存其当前位置(在之前print),以便可以返回到该位置。

然后,当您最终输入一个合适的值时,它将最终使堆栈松开,并随即打印出无效的堆栈。

您最好使用循环进行这种验证,例如:

def testfunc():
    ok = False
    while not ok:
        testvar = input('Select Option\n\n[1] Option 1\n[2] Option 2\n\n    >')
        if testvar in ('1', 'Option 1', 'option 1'):
            print("\nYou selected Option 1")
            ok = True
        elif testvar in ('2', 'Option 2', 'option 2'):
            print("\nYou Selected Option 2")
            ok = True
        else:
            print("\n\nThat is not an option, please select another option")

    print(testvar)

testfunc()

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在python中的json中替换变量的值?

来自分类Dev

如何在python类中的其他函数中定义(变量)的函数内使用变量?

来自分类Dev

在Python中定义函数后,如何在函数范围内更改变量?

来自分类Dev

Python - 如何在单击按钮时调用的函数内使用变量的值

来自分类Dev

如何在node.js中的函数内更改变量的值?

来自分类Dev

如何在替换函数中传递变量

来自分类Dev

如何在python中定义空变量或将值从函数传递给全局变量?

来自分类Dev

AS3 ::函数中的值如何成为全局变量

来自分类Dev

如何用xslt中不同标签中的值替换花括号内的变量

来自分类Dev

如何替换 Symfony 4 函数中的变量?

来自分类Dev

如何在 python 中修改 Python 变量的值(如引用)

来自分类Dev

如何在Python Pandas的dataframe列中替换多个值?

来自分类Dev

如何在 Python 中更改函数中的变量

来自分类Dev

如何在Python中的函数中修改局部变量?

来自分类常见问题

如何在bash中的函数内修改全局变量?

来自分类Dev

如何在jQuery函数内的变量中添加10

来自分类Dev

如何在javascript中的函数内使用全局变量?

来自分类Dev

如何在while循环内运行的函数中定义变量?

来自分类Dev

如何在javascript中更改函数内声明的变量

来自分类Dev

替换功能如何在python 3.x中工作

来自分类Dev

如何在python函数中为模块名称分配变量

来自分类Dev

如何在变量中为python函数构建参数

来自分类Dev

如何在python“递归”函数中重置全局变量?

来自分类Dev

如何在Python中的函数之间传递变量

来自分类Dev

如何在Python的变量中存储函数的结果?

来自分类Dev

如何在python函数中修改多个全局变量

来自分类Dev

在Python中如何在调用函数中使用变量?

来自分类Dev

如何在python“递归”函数中重置全局变量?

来自分类Dev

如何在Python的变量中存储函数的结果?

Related 相关文章

  1. 1

    如何在python中的json中替换变量的值?

  2. 2

    如何在python类中的其他函数中定义(变量)的函数内使用变量?

  3. 3

    在Python中定义函数后,如何在函数范围内更改变量?

  4. 4

    Python - 如何在单击按钮时调用的函数内使用变量的值

  5. 5

    如何在node.js中的函数内更改变量的值?

  6. 6

    如何在替换函数中传递变量

  7. 7

    如何在python中定义空变量或将值从函数传递给全局变量?

  8. 8

    AS3 ::函数中的值如何成为全局变量

  9. 9

    如何用xslt中不同标签中的值替换花括号内的变量

  10. 10

    如何替换 Symfony 4 函数中的变量?

  11. 11

    如何在 python 中修改 Python 变量的值(如引用)

  12. 12

    如何在Python Pandas的dataframe列中替换多个值?

  13. 13

    如何在 Python 中更改函数中的变量

  14. 14

    如何在Python中的函数中修改局部变量?

  15. 15

    如何在bash中的函数内修改全局变量?

  16. 16

    如何在jQuery函数内的变量中添加10

  17. 17

    如何在javascript中的函数内使用全局变量?

  18. 18

    如何在while循环内运行的函数中定义变量?

  19. 19

    如何在javascript中更改函数内声明的变量

  20. 20

    替换功能如何在python 3.x中工作

  21. 21

    如何在python函数中为模块名称分配变量

  22. 22

    如何在变量中为python函数构建参数

  23. 23

    如何在python“递归”函数中重置全局变量?

  24. 24

    如何在Python中的函数之间传递变量

  25. 25

    如何在Python的变量中存储函数的结果?

  26. 26

    如何在python函数中修改多个全局变量

  27. 27

    在Python中如何在调用函数中使用变量?

  28. 28

    如何在python“递归”函数中重置全局变量?

  29. 29

    如何在Python的变量中存储函数的结果?

热门标签

归档