咱们都知道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']