-4
A
回答
0
功能diff
不返回任何東西,這就是爲什麼print diff(z)
打印出來只是None
。它應該是這樣的
def diff(n):
x = n**(1.0/2)
y = (n-2)**(1.0/2)
differ = x-y
return differ
z = 2
while z >= 0 and z <= 100:
print diff(z)
z = z+1
0
由於註釋正確指出,diff
沒有明確的返回值。這不會太糟糕,因爲diff
具有打印所需號碼的所需副作用。但是,由於您要求python在while循環中輸出diff
的結果,因此每次需要時,都會要求diff
提供返回值。你可以通過改變diff來解決這個問題,不要有副作用,而是返回值(簡單地改變print
到return
)或者調用函數的副作用,但不要嘗試打印它的返回值(去掉print
聲明在while循環中)。
希望這可以幫助
相關問題
- 1. 爲什麼循環會比循環體多執行一次?
- 2. 爲什麼循環只執行一次?
- 3. 爲什麼每次使用malloc時都會收到警告?
- 4. 爲什麼我每次使用CFileDialog時都會收到異常?
- 5. jQuery每次循環兩次,爲什麼?
- 6. 爲什麼setInterval()循環每次都會更快?
- 7. 爲什麼每次我調用它時都會執行兩次該方法?
- 8. 爲什麼JavaScript代碼不會每次都執行?
- 9. 爲什麼我的行在循環170次時循環12000次?
- 10. Python每次運行時都不會運行,爲什麼?
- 11. 爲什麼$ k每次都通過循環重置爲零?
- 12. 循環執行無限次
- 13. 循環不會執行一次以上
- 14. 爲什麼我每次打開eclipse時都會收到安全警告?
- 15. 爲什麼我的PHP循環每次都壞了?
- 16. 爲什麼這個while循環執行無限次?
- 17. 每次循環執行時都會創建相同的隨機數。
- 18. os.system()無法在每次第一次執行我的命令時,爲什麼?
- 19. 每次執行VBA宏都會變慢
- 20. Javascript for循環應循環兩次,爲什麼只有一次?
- 21. 爲什麼這個PHP foreach循環只執行一次?
- 22. 爲什麼save方法只在for循環中執行一次?
- 23. 這個Standard ML bubblesort的循環爲什麼只執行一次?
- 24. 爲什麼tsql函數中的循環只執行一次?
- 25. 爲什麼我的循環只執行一次?
- 26. Java:爲什麼循環中的try-catch塊只執行一次?
- 27. 爲什麼循環中的Rake任務只執行一次?
- 28. 我的循環每次都會產生相同的vaues - 爲什麼?
- 29. 爲什麼我每次爲PyQt5項目都會收到警告「QStandardPaths:XDG_RUNTIME_DIR not set」
- 30. 如何每3次循環執行一次語句?
您'打印''diff'的返回值。由於'diff'沒有顯式返回任何東西,它會隱含地返回一個'None'。 –
@Nirbhay:該函數在循環中首先被調用,但直到執行'print differ'時纔得到任何東西,最後該函數沒有返回任何內容,因此您得到'None'。 – lkdhruw
這很有用,起來和工作!謝謝 –