2011-12-28 17 views
-2

1から100までの数字を印刷したいが、3の倍数のために "Fast"を7の倍数で印刷したい "Car"と両方の倍数のために3 & 7私はその番号の代わりに "Fast Car"を印刷したいと思う。ここではPythonを使って実装しようとしています。これはPythonの私の最初のプログラムです。ここでは構文エラーが発生しています。いずれか1つこれで私を助けることができますか?PythonでのFast Carの実装

for num in range(1,100) 
      if num%3==0 & num%7==0 
      print "Fast Car" 
      elif num%3==0 
      print"Fast" 
      elif num%7==0 
     print "Car" 
      else 
     print num 
+0

2番目のelifステートメント(printステートメント)の後に1つのタブスペースを与えました –

+2

注:演算子 '&'は論理 "and"を意味しません。代わりに演算子 'と'を使用してください。 – Howard

+0

[Python FizzBu​​zz on one line]の複製が可能です。(http://stackoverflow.com/questions/6890037/python-fizzbuzz-in-one-line) –

答えて

5

エラーログには、エラーが発生した行のヒントが表示されます。しかし

、あなたはif文の文とあなたのためのあなたの終わりに:を使うのを忘れていました:

for num in range(1,100): 
    if num%3==0 and num%7==0: 
     print "Fast Car" 
    elif num%3==0: 
     print"Fast" 
    elif num%7==0: 
     print "Car" 
    else: 
     print num 

編集:あなたは正しくインデントする必要は忘れないでください(これはPythonが動作する方法です)

編集2:いまいましい、ニクラスが私の前に、その点を提起:)

を最後に、あなたが前のPythonを書いたことがない場合、読み、チュートリアルに従うことをしようと、最高の一つは、確かにDive into Python

012です

編集3:コメントコードとPEP 8(スタイリング)へのリンクのJohnsywebの答えを見て

+0

N.B: '&'は論理 "and"を意味しません。 Howardが上記のコメントで述べたように、演算子 'と'を代わりに使用してください。 – Johnsyweb

+1

@Johnsyweb:ありがとう。私は自分のコードを修正しました – JMax

3

if、elif、else行の末尾にコロンを付ける必要があります。また、あなたの識別は間違っています...

+0

Mr.Niclasに感謝します。今それは働いている。ここでは、各if..elif..elseの後に1つのタブスペースを与えました。ステートメント。正しいアイデンティティのために何個のスペースを与える必要がありますか? Pythonでの識別子の特定の規則はありますか? –

+1

問題ありません。あなたが使用するスペースの数(またはタブを使用する場合)を構文的に指定する特別なルールはありません。しかし、PEP-8による良い規則は、常に4つのスペースを持つeacブロックを識別することです。これは強くお勧めします。 –

+0

はい、私の答えは推奨されているインデントをカバーしていると思います。 – Johnsyweb

1

私もPythonのために新しいですが、あなたはコロンで始まる試すことができます(:)あなたの後最初の行

for num in range(1,100): 

さらに別の場所が必要な場合もありますが、わかりません。私はあなた自身のコードを試してみましたが、今は時間がありません

+0

Mr.John ..今それは働いている.. –

+0

Mr.John ..これをチェックしてください.. http://py-ide-online.appspot.com/ –

2

a Python tutorialを使ってPythonの構文とインデント(空白は非常に重要です)を理解する必要があります。

for num in range(1, 100): # For-statements end with a colon 
    if num % 3 == 0 and num % 7 == 0: # Indentation is important 4 spaces per 
             # block. 'and' is "logical and". 
             # if-statements also end in a colon. 
     print "Fast Car" # This line is indented 4 spaces from the 'if' 
    elif num % 3 == 0: # This lines up with 'if' and ends with a colon 
     print "Fast"  # Indented 4 spaces from 'elif' 
    elif num % 7 == 0: # See previous 'elif' 
     print "Car"  # See previous 'print' 
    else:    # This lines up with 'if' and ends with a colon# 
     print num  # See previous 'print' 

また、PEP 8 -- Style Guide for Python Codeから読むことをお勧めします。

幸運を祈る! Pythonは素晴らしい言語です。