課程
/后端開發
/Python
/初識Python
L = range(1,101)
for x in L:
? ? print sum(x*x)
2019-06-27
源自:初識Python 7-2
正在回答
編輯器報錯了‘int’對象不可迭代。為什么呢?看下sum()函數的源代碼就知道了:
sum函數的參數是這樣的:sum(iterable[, start]),其中iterable為可迭代對象,可以是list、tuple或者dictionary等。
sum函數最后的值 = 可迭代對象里面的數相加的值 + start的值,其中start可以不寫,默認為0。
看到這你就知道了,sum()函數求和的對象是一個可迭代的數據類型。你代碼里面的X*X是一個‘int’類型,所以在sum()函數看來,是不可迭代的,所以就會報錯。
另外,你的算法也不對,所以平時解題寫正確代碼,就會少走很多彎路。
L=range(1,101)
List=[]
? ? List.append(x*x)
print (sum(List))
L = range(1,101)a=[x*x for x in L]print sum(a)
應該是函數sum()需要一個可迭代對象,比如list。。
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-08-14
編輯器報錯了‘int’對象不可迭代。為什么呢?看下sum()函數的源代碼就知道了:
sum函數的參數是這樣的:sum(iterable[, start]),其中iterable為可迭代對象,可以是list、tuple或者dictionary等。
sum函數最后的值 = 可迭代對象里面的數相加的值 + start的值,其中start可以不寫,默認為0。
看到這你就知道了,sum()函數求和的對象是一個可迭代的數據類型。你代碼里面的X*X是一個‘int’類型,所以在sum()函數看來,是不可迭代的,所以就會報錯。
另外,你的算法也不對,所以平時解題寫正確代碼,就會少走很多彎路。
2019-07-21
L=range(1,101)
List=[]
for x in L:
? ? List.append(x*x)
print (sum(List))
2019-06-27
L = range(1,101)
a=[x*x for x in L]
print sum(a)
應該是函數sum()需要一個可迭代對象,比如list。。