2015-10-06 56 views
-1

我正在嘗試將項目添加到Python列表中。 爲什麼這不工作?在python中使用while循環,直到列表已滿

PeoplesNames = []; 
while PeoplesNames.len < 3: 
    person = input('Enter your name: ') 
    PeoplesNames.append(person); 
print PeoplesNames 

肯定它使用了len函數,一旦它達到3的大小,它會退出循環?

+2

在Python你得到'LEN(PeoplesNames)列表的長度'。你可以放下';'。 –

+4

你沒有注意到'PeoplesNames.len'引發的'AttributeError'? – chepner

+0

即時通訊使用這個'http:// www.skulpt.org /#',它不給我任何錯誤的建議 –

回答

4

列表沒有len屬性。您必須使用列表作爲參數調用len函數。

PeoplesNames = []; 
while len(PeoplesNames) < 3: 
    person = input('Enter your name: ') 
    PeoplesNames.append(person); 
print PeoplesNames 

然而,更好的解決方案是使用列表理解:

peoples_names = [input('Enter your name:') for _ in range(3)] 
+0

@cmd我會借用你的答案改進的一件事,雖然:符合PEP-8的變量名與列表理解。 – chepner