【发布时间】:2012-08-27 07:27:38
【问题描述】:
我需要创建和引用大量变量,例如 diceOutCome2、diceOutCome4... diceOutCome12、diceOutComeHornHigh、diceOutComeHornFive 等,我经常需要引用它们,所以我希望将它们存储为全局变量而不是将它们作为参数传递。
最重要的是,我也尝试不使用索引号来引用它们,而是使用名称或属性,例如 counter.diceOutCome2... 2 这里不是 2 号结果,而是骰子掷出 1 和 1 的结果,四个将存储骰子总数为 2,2, 1,3 信息等。
创建它们的最有效方法和正确语法是什么?
def setGlobalVariables():
counter=[]
for i in range (0, 12):
global counter["count_"+i]=0
【问题讨论】:
-
别这样。制作列表,或者可能是字典,并使用索引。
-
谁说您需要创建大量变量?这听起来需要大量的工作来实现自动化、调试等。在编码之前进行一些额外的计划是否可以减少必要的工作量和复杂性?
-
@Paul - 对于 OP,我认为问题不在于计划不足,而在于教育不足。使用尾随数字“索引”命名变量是新程序员的常用策略 - 事实上,一些教程在早期课程中“教授”它,以便将受训者引导到不可避免的死胡同,以便呈现索引到集合的主题作为摆脱这种混乱的整洁方式。我认为 user1518600 在学习基本的编程工具和技术之前太快进入复杂的应用程序,之后他/她的计划将会更好地了解。