我試過編寫一個Python 2程序,它使用兩個類來創建包含數字0的十個元素的列表,並用1之間的隨機數替換列表中的第三個元素-10。但是,當我調用並打印add_number_to_list()函數時,它將返回一個未更改的列表。這裏是我的代碼:無法使用函數更改列表中的元素
#coding: iso-8859-1
import random
class Slumpa:
def __init__(self):
pass
def add_number_to_list(self, list):
a = random.randint(1, 10)
list[2] == a
return list
class Lista:
def __init__(self):
self.b = Slumpa()
self.c = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
def add_number_to_list(self):
return self.b.add_number_to_list(self.c)
P = Lista()
print P.add_number_to_list()
另外,如果你已經有了一個for循環,像這樣的:
for i in range(0, len(lista)):
if lista[i] == 0:
lista[i] = a
break
你必須使用break語句,以讓開循環,或者你可以做我= len(lista)+ 1?
有趣的是,通常,人們作出了相反的錯誤)。 –