咱們都知道python的input()函數是以字符串的形式輸入的,這就產生了一個問題:當咱們在一行內輸入多個數值時,input()不會去判斷輸入元素個數,它只管把這行輸入以字符串的形式輸入,所以咱們要獲得每個元素時就須要對字符串分割,再強轉成咱們須要的類型。這樣作明顯很麻煩。下面我介紹一種簡單的方法:python
>>> a = map(int, input('').split()) 1 2 3 >>> a <map object at 0x000001A955B69AC8>
如上面代碼所示咱們成功得到了多個輸入,可是此時仍是有問題:它的類型是map對象,咱們仍是沒法直接使用。咱們只需稍做處理便可:函數
>>> b = list(map(int, input('').split())) 1 2 3 >>> b [1, 2, 3]
咱們看到如今多個輸入值已經能夠方便使用了。接下咱們只需修改map中的數據類型就能獲得不一樣類型的列表:spa
>>> c = list(map(float, input('').split())) 1 2 3 >>> c [1.0, 2.0, 3.0]
>>> d = list(map(str, input('').split())) 1 2 3 >>> d ['1', '2', '3']