首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Python for循环更改变量名

使用Python for循环更改变量名
EN

Stack Overflow用户
提问于 2009-06-29 19:38:46
回答 2查看 158.9K关注 0票数 34

我想知道是否有人知道有一种方法可以基于for循环更改变量名,如下所示:

代码语言:javascript
复制
for i in range(3)
     group+i=self.getGroup(selected, header+i)

这样,变量的名称就会发生变化,以适应数据。谢谢!

~Sam

EN

回答 2

Stack Overflow用户

发布于 2009-06-29 19:43:19

您可能需要一个字典,而不是单独的变量。例如

代码语言:javascript
复制
d = {}
for i in range(3):
    d["group" + str(i)] = self.getGroup(selected, header+i)

如果您坚持实际修改局部变量,则可以使用locals函数:

代码语言:javascript
复制
for i in range(3):
    locals()["group"+str(i)] = self.getGroup(selected, header+i)

另一方面,如果您实际需要的是修改所在类的实例变量,那么可以使用setattr函数

代码语言:javascript
复制
for i in group(3):
    setattr(self, "group"+str(i), self.getGroup(selected, header+i)

当然,对于所有这些例子,我假设你不仅仅想要一个列表:

代码语言:javascript
复制
groups = [self.getGroup(i,header+i) for i in range(3)]
票数 61
EN

Stack Overflow用户

发布于 2009-06-29 19:43:01

看起来你想用一个列表来代替:

代码语言:javascript
复制
group=[]
for i in range(3):
     group[i]=self.getGroup(selected, header+i)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1060090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档