gpt4 book ai didi

python - 需要帮助正确使用变量,python

转载 作者:行者123 更新时间:2023-11-30 23:39:25 25 4
gpt4 key购买 nike

所以我在一个名为definitions.py的文件中有很多函数

我的主文件 main.py 访问这些定义,并且还具有使用这些函数的自己的函数。

现在在 main.py 中我有“from定义导入*”

这两个文件都依赖于一组 15 个初始变量,这些变量我已放置在定义.py 中,这一切都很好,我的所有功能都工作正常,当我想将我的应用程序用作模型,我想在其中更改一些变量以查看输出有何不同。

本质上,我希望我的初始变量位于一种碗中,每次调用函数时都会访问该碗,并且我可以交换和更改此碗中的值,这意味着调用的下一个函数将使用更新的变量。

我认为,我目前遇到的问题是,因为变量是在定义中编写的,就是这样,我无法更改它们。

即使在 python shell 中,我也可以将 n1 等于其他值,执行一个使用 n1 的函数,但它将使用旧的 n1,而不是新的,我认为是因为定义.py 文件中的变量没有更改.

是否有某种方式可以实时访问我不知道的变量?谢谢。

最佳答案

你应该使用一个类。例如,如果您的 definitions.py 文件具有:

variable1 = 3
variable2 = 'stuff'

def spam(arg1):
return 'spam' + arg1

def eggs(arg1,arg2):
return 'eggs' + arg1 + arg2

更改为

class Definitions():
def __init__():
self.variable1 = 3
self.variable2 = 'stuff'

def spam(self,arg1):
return 'spam' + arg1

def eggs(self,arg1,arg2):
return 'eggs' + arg1 + arg2

现在,您可以从 main.py 文件中以稍微不同的方式导入并扫描多个参数值:

import definitions

for parameter in xrange(0,10):
defs = definitions.Definitions()
defs.variable1 = parameter

# do some stuff and store the result

# compare the various results

请记住,现在您的函数位于类内部,因此您应该调用 defs.spam('mail'),而不是调用 spam('mail'),等等。

关于python - 需要帮助正确使用变量,python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13567354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com