我对python和编程很新。我目前正在建立鸡尾酒调音台,并从头开始编码! 我的程序幸运的是,因为我只是在另一个之后添加简单的命令...但这限制了我在扩展我的项目时的极度! 所以这是我的问题:
我开始用两种鸡尾酒来测试我的电子产品。 所以在我的程序中的各种函数中,我有类似的东西(例子)
def Cocktail1():
Pump1Amount (< this is a variable) = 100 * Cocktail1Ingredient1 (<this is a variable too)
Pump2Amount = 100 * Cocktail1Ingredient2
Pump3Amount = 100 * Cocktail1Ingredient3
def Cocktail2():
Pump1Amount (< this is a variable) = 100 * Cocktail2Ingredient1 (<this is a variable too)
Pump2Amount = 100 * Cocktail2Ingredient2
Pump3Amount = 100 * Cocktail2Ingredient3
and so on...
现在我想添加更多鸡尾酒和更多泵!但是为了用我之前的代码实现这一点,我需要做很多重复并在所有函数中更改数百个单位...我想要12个鸡尾酒,12个泵,所以这已经等于144个不同的代码段。 ..然后像我所展示的情况在我的节目中存在了几次!
所以我的想法是这样的:
def CocktailX():
ChosenCocktail = X (<this is a variable that is set with pressing a button)
Pump1Amount = 100 * CocktailXIngredient1
Pump2Amount = 100 * CocktailXIngredient2
你看到我在说什么?我想通过在变量名中使用常规变量来引用变量!
正如我所说,我真的很新,所以不知道所有重要的术语和一切!所以请向你解释一下你对我的回答,就像你会给四年级学生做的那样:D非常感谢你提前!!!!
答案 0 :(得分:0)
虽然可以在许多语言(包括Python)中计算变量名称,但是通过数字标签( index )区分的许多类似变量的常见情况)由数组(在Python中称为list
)处理。你可以写PumpAmounts[0]
和CocktailIngredients[3][5]
- 后者在概念上是一个带有两个索引的变量,实际上是list
list
个。{/ p>
重要的一点是索引是表达式 - 可以是文字(a[1]
),变量(a[x]
) ,或(更复杂的)计算(a[b[2*getHalfIndex(foo)]]
)。这些选择还允许您在更改索引的循环中处理列表中的所有元素,尽管在Python中简单访问每个元素的常规方法不使用索引:
for elem in array:
foo(elem, ...)
PS-I当我开始编程时遇到了同样的问题:我的第一个参考(对于不同的语言)覆盖的函数远不止语法,所以我不知道数组是否存在。