2016-04-10 60 views
0

有人能告訴我我做錯了什麼嗎?我寫使用循環在Python 3.x的一個程序,但是當我執行程序我得到一個回溯的錯誤:如下 回溯(最近最後一次通話)Python,循環程序

的13倍數爲195和因素有: 文件「C:/用戶/達林/桌面/第4章/ program4_2.py」,第19行,在 list1.append(J) AttributeError的: '字典' 對象沒有屬性 '追加'

這是代碼我輸入了:

def main(): 
    for i in reversed(list(range(100,201))): 
    if i%13==0: 
     print("multiple of 13 is",i,"and factors are as follows") 
     list1 = {} 
     for j in list(range(2,i+1)): 
      if i%j == 00: 
      list1.append(j) 
     print(list1) 
main() 
+0

如果我沒有記錯,'list1 = {}'聲明瞭一個字典,而不是一個列表,因此沒有與之關聯的'append'方法。 –

回答

0

list1必須是像這樣的列表...

list1 = [] 

你將它定義爲一個字典,並作爲蟒蛇說

「字典」對象有沒有屬性「追加」

0

正如評論盧克園,list1 = {}將宣佈一本字典。你需要的是list1 = []

此外,範圍將返回一個range類型,可以由大多數方法和循環處理,因此不需要將其轉換爲列表。