0

我有一个包含参数及其值的字典,我使用交互式程序从控制台检索这些参数及其值。

mydic = { 'n': Nvalue , 'p': Pvalue }

我想固定一个值并通过一个步骤在最小值和最大值之间改变另一个值。例如,如果用户选择改变 p,他必须选择最小值和最大值以及步长。我必须尽可能地拥有 at 和 as 字典。

min = 0.2
max = 0.5
step = 0.2
n = 3

结果,我将拥有:

mydic = { 'n': 3 , 'p': 0.2 }
mydic = { 'n': 3 , 'p': 0.4 }

这是我写的代码。我没有设法更新字典以获得不同的可能性

if var_param == param["name"]:
   minimum = int(input("  Choose the min value of " + var_param + " : "))
   maximum = int(input("  Choose the max value of " + var_param + " : "))
   step = int(input("  Choose the step of the variation : "))

   i = minimum
   while i <= maximum :
       mydic.update({var_param: i+step})
       i= i + step

if var_param != param["name"]:
   mydic.update({param["name"]: int(input("Choose the value of "+ param["name"]+ " : "))})
print(mydic)

我只有一本字典。我知道问题出在 while 循环中,但我不知道如何解决它以获取所有可能具有正确值的字典。

提前致谢

4

1 回答 1

2

您正在 while 循环中替换旧字典。您需要分配一个数组 [minimum, step, step, step, maximum] 作为 dict 键的值。

于 2012-12-19T11:53:38.450 回答