0

対話型プログラムを使用してコンソールから取得したパラメーターとその値を含む辞書があります。

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

1 つの値を固定し、もう 1 つの値を最小値と最大値の間で変化させたいと考えています。たとえば、ユーザーが 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)

辞書は 1 つしかありません。問題が while ループにあることはわかっていますが、正しい値を持つすべての可能な辞書を取得するために修正する方法がわかりません。

前もって感謝します

4

1 に答える 1

2

while ループ内で古い辞書を置き換えています。配列 [最小、ステップ、ステップ、ステップ、最大] を dict キーの値として割り当てる必要があります。

于 2012-12-19T11:53:38.450 に答える