2016-04-25 14 views
-2

私はまだPythonを学んでいますが、私は難しいです。whileループです。私はwhileループとifelseステートメントを含む以下のコードのサンプルを持っています。私がそれをしたいのは、「Less than 2」と「Greater than 4」という印字ですが、それは動作し続けます。それは私がそれがしたいと思うものであるそれを一度だけ印刷しません。どんな助けでも大歓迎です!whileループはif/else文を使ってPythonに入れます

counter = 1 
while (counter < 5): 
    count = counter 
    if count < 2: 
     counter = counter + 1 
    else: 
     print('Less than 2') 
    if count > 4: 
     counter = counter + 1 
    else: 
     print('Greater than 4') 
    counter = counter + 1 
+1

あなたのカウンターは、あなただけの無限ループ内の他の文と印刷を打っておくた後、2にインクリメントされます。 – miradulo

+1

*それは私がしたいと思っているものを一度だけ印刷しません。*これは中国語かTamazightですか? –

+3

そして、あなたの編集の後、それはまさにそれが何をすると思いますか。条件が成り立つ各増分に1を加え、印刷されたものが完璧な意味を持つようにします。 – miradulo

答えて

4
counter = 1 
while (counter <= 5): 
    if counter < 2: 
     print("Less than 2") 
    elif counter > 4: 
     print("Greater than 4") 
    counter += 1 

これは、あなたがやりたいだろう(、2未満であれば、印刷本など)

1

私はあなたが1から4までインクリメントしながらLess than 2またはGreater than 4を言いたいと仮定しています:

counter = 1 
while (counter < 5): 
    if counter < 2: 
     print('Less than 2') 
    elif counter > 4: 
     print('Greater than 4') 
    else: 
     print('Something else') # You can use 'pass' if you don't want to print anything here 
    counter += 1 

あなたの中の状態がcounter < 5であるため、プログラムはGreater than 4を表示することはありません。