代码每次重命名一个变量是运行(python)?
Rename a variable each time the code is run (python)?
我有一些 python 代码按计划设置为 运行。 (我认为我的问题就像在一个循环中一样。)
假设最基本的代码片段如下所示:
A = 1
B = 2
renameMe = A + B
假设调度程序 运行 每 5 分钟执行一次相同的代码片段。每次代码运行,变量A&B的值都不一样,但是操作renameMe = A + B
总是一样的。
A 和 B 的值是从每 5 分钟更新一次的数据框中抓取的,所以我事先不知道它们是什么,但如果我需要事先对它们做一些事情而不是将它们分配给马上A & B,我可以。
我最近发现,要使其他功能正常工作,我需要能够在每次代码片段 运行 时重命名变量 renameMe
。换句话说,我希望变量的名称在第一次代码片段 运行s 时为 renameMe1
,然后在 5 分钟后 运行s 时为 renameMe2
,依此类推.
只要我能够找出新变量名并在别处使用它,变量名以何种方式更改(ints、strs 等)并不重要。
不要NOT使用变量变量名,你会遇到问题,使用容器:
一个列表:
# first time
container = []
# each loop/run
container.append(A+B)
## last value
container[-1]
字典:
# first time
container = {}
# each loop/run
container['new_id'] = A+B
# access arbitrary value
container['my_previous_id']
如果需要持久性,请使用平面文件或数据库。
我觉得用一个class比较合适,这样就可以用setattr
了:
class newVal:
def __init__(self):
self.n = 1
def addVal(self, a, b):
setattr(self, f”val{self.n}”, a+b)
self.n += 1
Values = newVal()
Values.addVal(a, b)
Values.val1
现在将被分配
我有一些 python 代码按计划设置为 运行。 (我认为我的问题就像在一个循环中一样。)
假设最基本的代码片段如下所示:
A = 1
B = 2
renameMe = A + B
假设调度程序 运行 每 5 分钟执行一次相同的代码片段。每次代码运行,变量A&B的值都不一样,但是操作renameMe = A + B
总是一样的。
A 和 B 的值是从每 5 分钟更新一次的数据框中抓取的,所以我事先不知道它们是什么,但如果我需要事先对它们做一些事情而不是将它们分配给马上A & B,我可以。
我最近发现,要使其他功能正常工作,我需要能够在每次代码片段 运行 时重命名变量 renameMe
。换句话说,我希望变量的名称在第一次代码片段 运行s 时为 renameMe1
,然后在 5 分钟后 运行s 时为 renameMe2
,依此类推.
只要我能够找出新变量名并在别处使用它,变量名以何种方式更改(ints、strs 等)并不重要。
不要NOT使用变量变量名,你会遇到问题,使用容器:
一个列表:
# first time
container = []
# each loop/run
container.append(A+B)
## last value
container[-1]
字典:
# first time
container = {}
# each loop/run
container['new_id'] = A+B
# access arbitrary value
container['my_previous_id']
如果需要持久性,请使用平面文件或数据库。
我觉得用一个class比较合适,这样就可以用setattr
了:
class newVal:
def __init__(self):
self.n = 1
def addVal(self, a, b):
setattr(self, f”val{self.n}”, a+b)
self.n += 1
Values = newVal()
Values.addVal(a, b)
Values.val1
现在将被分配