我有一个包含参数及其值的字典,我可以通过交互式程序从控制台中检索。
mydic = { 'n': Nvalue , 'p': Pvalue }
我想修复一个值,并在步长的最小值和最大值之间改变另一个值。例如,如果用户选择改变p,则必须选择最小值和最大值以及步骤。而且我必须拥有和词典作为可能性。
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循环中,但我不知道如何修复它以获得具有正确值的所有可能的字典。
提前致谢
答案 0 :(得分:2)
您正在替换while循环中的旧词典。您需要指定一个数组[minimum,step,step,step,maximum]作为dict键的值。