2016-12-15 121 views
-2

我的代碼是從用戶輸入10個整數並返回最大奇數輸入,但它不工作。Python代碼錯誤「處理完成退出碼0」

代碼:

def myolution (self, numbers): 
    numbers = [input('Enter values') for i in range(10)] 
    odds = [y for y in numbers if y % 2 != 0] 
    if odds: 
     return max(odds) 
    else: 
     return 'All even' 

我得到這個消息:進程退出代碼爲0完

+2

您的代碼不調用你的函數。它所做的只是聲明一個函數而對它無所作爲。 '退出代碼0'完成的進程是來自你的shell的消息,Python解釋器完成沒有錯誤。 –

+0

即使它確實調用了函數,那也沒什麼區別。 – Idos

回答

0

有3個問題,你的代碼

  1. 你不使用selfnumbers從你的功能簽名。
  2. input返回一個字符串,所以你需要將它轉換爲一個數字。
  3. 你不執行你的函數,只定義它,你需要明確地調用它。

這裏是固定版本

def myolution(): 
    numbers = [int(input('Enter a value: ')) for i in range(10)] 
    odds = [y for y in numbers if y % 2 != 0] 
    if odds: 
     return max(odds) 
    else: 
     return 'All even' 

print(myolution()) 
相關問題