0

質問は次のとおりです。

グローバル変数を 5 に初期化する Python プログラムを作成します。keydown イベント ハンドラーはこのグローバル変数を 2 倍して更新し、keyup イベント ハンドラーは 3 ずつ減らして更新します。

キーを 12 回押した後、つまり一度に 1 つのキーを押して離し、これを合計 12 回繰り返した後のグローバル変数の値は?

コードをテストするには、キーを 4 回押した後、グローバル変数の値が 35 になる必要があります。

Coursera モジュールを実際に使用して keyup イベントと keydown イベントを再作成するのではなく、for ループを試しました。

私が持っているものを修正する方法について何か提案はありますか?

a = 5
for a in range(13):
    val = (a*2)-3

print val
4

2 に答える 2

2

for a in range (13)毎回 0 ~ 12 の値で上書きし、「グローバル」変数の代わりにそれに基づいて val を計算します。これはおそらくあなたがやりたいことではありません。

たぶん彼のようなもの?

a = 5
for i in range(12):
    a = (a*2)-3

print a
于 2013-11-07T08:16:48.640 に答える
0

あなたの問題は、valを計算するためにaを使用していることです:

val = (a*2)-3

2つの変数を混同したと思います。これを試してください:

val = 5
a = 0
for a in range(0,4): #this make do the loop just 4 times
    val = (val*2)-3

print val

コードでは 0 から 12 までの値を取得し、その値を使用する必要がないため、変数 val を 5 に初期化する場合、必要な操作は常に変数 val を使用することです。私のコードでは、for ループを作成します。自分自身を4回実行し、valで操作を行います。コードの最後に val で 35 を取得します

于 2013-11-07T08:21:51.857 に答える