n,m=input().split()
n=int(n)
m=int(m)
输入的m,n是字符串,不能进行数值的计算,用int把他们转换成整型,便于数值计算。
第一行就是错的,二三行也没任何意义
m=input().split()
m是个字符串列表
split函数根本没有2个返回值
把列表转int也没有任何意义,会报错的
-=-=-=-=-=-=
但是有一个例外
就是列表里刚好有2个元素
那么用m,n两个变量去取值,就相当于拆箱操作,分别取得列表里第0项和第1项的值
那么第2行和3行就是在把这2个值转成int类型
-=-=-=
记住,前提是必须,只能在控制台输入2个数,输入多了少了都会报错。
所以这个错误的代码能够正确运行的前提是输入必须遵守某种规律
输入的n,m是字符串类型 把n、m转换为整数类型
第2,3行中用int函数,是将数值、数值字符串或字节字符串转换为整数。如果要输入浮点数参与运算的话,则可用eval。
n,m=input('input two numbers,separated by a space:').split()
n=eval(n)
m=eval(m)
print(n,m,type(n),type(m))
'''
input two numbers,separated by a space:12 3.36
12 3.36 <class 'int'> <class 'float'>
'''