2011-12-28 53 views
-2

我想打印1到100的數字,但是3的倍數我想打印「快速」,爲7的倍數我想要打印「汽車」和3的倍數3 & 7我想打印「快速車」而不是那個號碼。在這裏我試圖用Python來實現它。這是我在Python中的第一個程序。在這裏我得到語法錯誤。誰能幫我這個??蟒蛇中的快速車實現

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

我在第二個elif語句(打印語句)後給出了1個選項卡空間 – 2011-12-28 09:21:25

+2

注意:運算符&並不意味着邏輯「和」。改爲使用運算符'和'。 – Howard 2011-12-28 09:26:02

+0

[Python FizzBu​​zz在一行中]的可能重複(http://stackoverflow.com/questions/6890037/python-fizzbuzz-in-one-line) – 2011-12-28 09:35:17

回答

5

錯誤日誌應該給你一些提示,你會得到錯誤的行。

然而,你忘了你的for語句結束時使用:和你的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

編輯3:看看Johnsyweb的答案註釋代碼和對PEP 8(樣式)

+0

N.B:'&'並不意味着邏輯「和」。正如霍華德在上面的評論中所說的那樣,使用運算符'和'。 – Johnsyweb 2011-12-28 10:03:19

+1

@Johnsyweb:謝謝。我已更正我的代碼 – JMax 2011-12-28 10:11:34

3

你必須在每個結束時冒號,如果,elif和else行。你的身份也是錯誤的...

+0

謝謝尼克拉先生。現在它正在工作。在這裏我已經給出了每個if..elif .. else之後的1個選項卡空間。聲明。我需要多少空間才能正確識別。?在Python中有沒有特定的規則? – 2011-12-28 09:40:28

+1

沒問題。對於您使用多少空間(或者如果您使用選項卡),沒有特別的規則。但根據PEP-8的好規則是總是使用4個空格來確定塊。這是強烈建議。 – 2011-12-28 09:48:12

+0

是的,我認爲我的答案涵蓋了建議的縮進。 – Johnsyweb 2011-12-28 09:50:29

1

我是新來的Python作爲很好,但你可以試着用冒號鏈接(:)後您的第一行

for num in range(1,100): 

你甚至可能需要它另一個地方,但我不知道。我會自己試試你的代碼,但我現在沒有時間

+0

謝謝約翰先生..Now's it working .. – 2011-12-28 09:41:26

+0

Mr.John ..請檢查這個.. http://py-ide-online.appspot.com/ – 2011-12-28 09:42:18

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是一門偉大的語言。