Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 在python中,如何在一个空格分隔的行中读取两个不同数据类型的输入?_Python 3.x - Fatal编程技术网

Python 3.x 在python中,如何在一个空格分隔的行中读取两个不同数据类型的输入?

Python 3.x 在python中,如何在一个空格分隔的行中读取两个不同数据类型的输入?,python-3.x,Python 3.x,我想知道这可以在一行中完成: a,b = input().split() 这两个输入a和b-->其中a是字符串,b是整数, 默认情况下,拆分它们也会使整数值成为字符串。 例如a='whates',b='2' 我怎样才能做到这一点呢?这是一种方法。使用列表理解 演示: a,b = [int(i) if i.isdigit() else i for i in input("Enter").split() ] print(a, b) print(type(a), type(b)) WHALES 2

我想知道这可以在一行中完成:

a,b = input().split()
这两个输入
a
b-->
其中
a
是字符串,
b
是整数, 默认情况下,拆分它们也会使整数值成为字符串。 例如
a='whates'
b='2'


我怎样才能做到这一点呢?

这是一种方法。使用列表理解

演示:

a,b = [int(i) if i.isdigit() else i for i in input("Enter").split() ]
print(a, b)
print(type(a), type(b))
WHALES 2
<type 'str'> <type 'int'>
输出:

a,b = [int(i) if i.isdigit() else i for i in input("Enter").split() ]
print(a, b)
print(type(a), type(b))
WHALES 2
<type 'str'> <type 'int'>
2