python得到多個輸入值

咱們都知道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']
相關文章
相關標籤/搜索