【问题标题】:Is there a way to create a variable outside of a function and change it while inside of the function? [duplicate]有没有办法在函数外部创建变量并在函数内部更改它? [复制]
【发布时间】:2020-04-30 23:56:17
【问题描述】:

我正在尝试访问我在外部函数内部创建的变量。这就是我所做的:

    def add(a,b):
        v = a + b
        print(v)

    add(5,5)

    print(v)

但是,当我尝试在函数之外打印它时,它告诉我它没有定义。然后我开始先在函数外部创建变量,然后在函数内部更改它。这就是我为此所做的:

    v = 0
    def add(a,b):
        v = a + b
        print(v)

    add(5,5)

    print(v)

在这种情况下,它只是在最后一行打印出 0 而不是 10。有什么方法可以在函数内部保持对变量的更改而不是保持不变?

【问题讨论】:

  • 是的,您必须在函数中使用global 语句。但是,这不是设计程序的推荐方式。可变的全局状态是不好的。不惜一切代价避免它。

标签: python function variables


【解决方案1】:

我认为你需要在函数中的变量前面添加一个global关键字。

编辑

我没有看到对原始帖子的评论,但要重复他的观点 - 使用全局变量通常是一种不好的做法。

【讨论】:

  • 那是非常糟糕的做法。它也没有显示您打算如何实施此解决方案
猜你喜欢
  • 2018-05-11
  • 1970-01-01
  • 2021-04-11
  • 2017-03-08
  • 2015-05-07
  • 2022-06-10
  • 1970-01-01
  • 2020-08-13
  • 1970-01-01
相关资源
最近更新 更多