2015-01-15 22 views
0

我是新來的Python和學習CodeAcademy.com;我有一個問題:無法在Python中使用列表執行代碼

變化list_function使:

  1. 在列表的指數之一添加3到該項目。
  2. 將結果存回第一個索引。
  3. 返回列表。

這裏是我的代碼:

def list_function(x): 
    return x 

n = [3, 5, 7] 
n.insert(1,3) 
print list_function(n) 

我只得到了錯誤,我應該怎麼辦?

我的問題是瞭解數字2和3的選項。

+0

我沒有看到任何錯誤* *在這裏。 – Maroun

+0

如果你使用的是python 3,我認爲你需要使用函數語法來打印,例如print(list_function(n)) –

+0

@JohnGreenall:讓我們更加迷惑用戶。 –

回答

2

你感到困惑加入插入,點1:

  1. 在列表的指數之一添加3到該項目。 TOT的

    n[1] + 3 
    

    增加3(與+):

你解釋這是插入:

n.insert(1,3) 

但實際上他們的意思了運算項目索引號爲[1])的列表(n)。

您然後插入回列表相同指數:

n[1] = n[1] + 3 

所有這些都應自己的函數中完成:

def list_function(some_list): 
    some_list[1] = some_list[1] + 3 # step 1 and 2 
    return some_list     # step 3 
+0

感謝您的信息.. 現在我明白了。 – MuteX

+1

現貨;這個問題是由'add'的重載意義觸發的。爲了記錄,如果你願意將步驟1和步驟2合併成一個語句,你可以考慮使用'some_list [1] + = 3'(儘管這可能被認爲是「不那麼明確」)。 –