2017-08-04 26 views
0

我想提示用戶輸入數組的大小和該數組的元素。設置列表大小並在用戶輸入時追加項目

例子:

Enter size of list: 4 
Enter elements: "apple","banana","pear","pineapple" 

輸出:

['apple','banana','pear','pineapple'] 

這是我已經試過:

listsize = int(input("Enter size of list: ")) 
readylist = []*listsize 
uinput = input("enter item") 
uinput = uinput.split(',') 
readylist.append(uinput) 

print(readylist) 

我不是得到這個:

[['apple','banana','pear','pineapple']] 

任何幫助,非常感謝。

+1

,爲什麼你會詢問用戶列表的長度?這很容易出錯。最好只是要求自己的元素和數量。否則,如果用戶說它會輸入4個元素,然後只列出其中的2個,你會怎麼做? – narn

回答

1

簡單的解決辦法,按您的要求,

readylist = [] 
for _ in range(int(raw_input("Enter size of list:"))): 
    uinput = raw_input("enter item:") 
    readylist.append(uinput) 
print(readylist) 
>>>['apple', 'banana', 'mango', 'orange'] 
+1

我之前觀察過你的解決方案,這是我想要的方式。非常感謝! – Maxxx

+0

不客氣@Maxxx –

0

如果你希望你的清單限制,你需要的是collection.deque

>>>listsize = int(input("Enter size of list: ")) 
>>>uinput = input("enter item") 
>>>uinput = uinput.split(',') 
>>>readylist = collections.deque(uinput, listsize) 
0

如何:

uinput = input("enter items") 
uinput = uinput.split(',') 

print(uinput) 

但是,如果你要問多次,並追加到現有的列表:

prev_inputs += uinput 

其中prev_inputs是已經存在的列表