簡體   English   中英

誰能告訴我為什么我的else語句出現無效的語法錯誤?

[英]Can anyone please tell me why I'm getting an invalid syntax error with my else statement?

我正在嘗試測試2到100之間的質數,但是我的代碼出現錯誤,我不知道為什么。 (我是python的新手)

def function():
  mylist = [1,2]
  count = 0
  for i in range(2,100):
    for j in range(2,i):
      if i % j == 0:
        count += 1
      if count > 0:
        count += 0
        else:
          mylist.append(i)
      count = 0
  return mylist

看起來像是縮進問題,請嘗試以下操作:

if count > 0:
  count += 0
else:
  mylist.append(i)

在Python中,正確縮進代碼非常非常重要。 您會看到, else關鍵字必須出現在與if關鍵字相同的級別上。 使用良好的IDE或文本編輯器來幫助您捕獲此類錯誤!

Python用空白表示代碼塊的方式與某些語言使用花括號的方式相同。 您的最里面的代碼塊在帶有花括號的語言中看起來像這樣,這可能使查看語法錯誤的位置更加容易:

if (count > 0) {
  count += 0;
  else {
    mylist.append(0);
  }
}

否則,應與if語句的行縮進。 否則,else條件被視為在if條件之內。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM