【问题标题】:Can you use variable names as variables? (Like in PHP)你可以使用变量名作为变量吗? (就像在 PHP 中一样)
【发布时间】:2022-06-13 23:25:26
【问题描述】:

我正在创建一个数组,其中大多数变量保持不变,但有几个变量通过不同的值循环。如果我想轻松选择哪两个循环,我该怎么做?

你可以使用变量名作为变量吗? (就像在 PHP 中一样)或者有没有更 Pythonic 的方式来写这个。

import numpy as np
arrayValues=[]
apple=1
mango=2
banana=3
orange=5
kiwi=10
melon=9
pear=4
applerange=np.linspace(1,50,2)
bananarange=np.linspace(200,700,4)
for apple in applerange:
    for banana in bananarange:
        arrayValues.append([apple, mango, banana, (10-banana), orange, kiwi, melon, pear])
        print('{} and {}'.format(round(apple,2),round(banana,2)))

【问题讨论】:

  • 接触这种能力似乎是每个新程序员学习之旅的必经之路。然而,即使在 PHP 中,这也是一个坏主意。相反,使用字典来保存您的值,使用字符串作为键。 stackoverflow.com/q/1373164/3141234

标签: python


【解决方案1】:

非常非常有趣。谢谢。

【讨论】:

    【解决方案2】:
    import numpy as np
    
    variableA = "apple"
    variableB = "banana"
    
    arrayValues = []
    values = {"apple": 1, "mango": 2, "banana": 3, "orange": 5, "kiwi": 10, "melon": 9, "pear": 4}
    ranges = {"apple": np.linspace(1,50,2), "banana": np.linspace(200,700,4)}
    
    for i in ranges[variableA]:
        for j in ranges[variableB]:
            values[variableA] = i
            values[variableB] = j
            arrayValues.append([values["apple"], values["mango"], values["banana"], (10-values["banana"]), values["orange"], values["kiwi"], values["melon"], values["pear"]])
            print('{} and {}'.format(round(values[variableA],2),round(values[variableB],2)))
    

    【讨论】:

      猜你喜欢
      • 2019-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-14
      • 2012-01-30
      • 2011-02-18
      • 2011-03-25
      • 2021-06-20
      相关资源
      最近更新 更多