2017-04-17 733 views
0

我想將1添加到我的變量,然後將此變量添加到列表中,所以當我打印出我的列表時,變量的值在其中。然而,我的代碼打印出一個空列表,儘管我添加了變量。Python將一個整數添加到列表中

case_number = 0 
case_numbers = [] 

issue = input('Has the issue been solved?').lower() 
if issue == 'no': 
     case_number += 1 
     case_numbers+[int(case_number)] 
     print(case_numbers) 
+0

'+'創建一個新的列表,它你丟棄了。你需要的是'case_numbers.append(int(case_number))' –

+0

你需要用'case_numbers + = [int(case_number)]替換最後一行' –

+0

你有一個打印錯誤,寫'case_numbers + = [int(case_number )]'(忘記等號) – Serenity

回答

0
if issue == 'no': 
     case_number += 1 
     case_numbers.append(case_number) 
     print(case_numbers) 

這裏,case_numbers.append(case_number)語句添加元素到列表中。

0

的問題是這一行:

case_numbers+[int(case_number)] 

雖然這是真的,你可以通過添加另一個列表到它的末尾添加值的列表,然後需要將結果分配給一個變量。現有列表不會在原地進行修改。像這樣:

case_numbers = case_numbers+[int(case_number)] 

但是,這遠遠不是最好的解決方法。首先,您不需要將您的case_number值轉換爲int,因爲它已經是int。此外,列表還有一個追加方法用於確切的目的。

case_numbers.append(case_number) 
0

如果你想增加一個值到不斷增加的列表中,你需要使用list.append()方法。它增加值到列表的末尾,所以你的代碼應該是:

case_number = 0 
case_numbers = [] 

issue = input('Has the issue been solved?').lower() 
if issue == 'no': 
     case_number += 1 
     case_numbers.append(int(case_number)) 
     print(case_numbers) 

額外提示: list.append()方法增加值,所以如果你使用append()然後將其添加列表B插入到表一結束列表將新增數組listB的listA的內部這樣listA.append(listB)= ["a","b","c",["d","e","f"]]所以如果你想要添加到正常的列表中,您應該使用list.extend()方法,將一個列表的值添加到值彼此,使得listA.extend(listB)=["a","b","c","d","e","f"]