想要打印姓名和学号,为什么会一直提示输入错误??
想要打印姓名和学号,为什么会一直提示输入错误??while True:
temp1=input('输入名字:')
temp2=input('输入学号:')
if isinstance(temp1,str) and isinstance(temp2,int):
print(temp1,temp2)
else:
print('输入的格式不对,请检查后重新输入:') 因为你input进来的永远按字符串处理。
while True:
temp1=input('输入名字:')
temp2=int(input('输入学号:')) #方法1
if isinstance(temp1,str) and isinstance(temp2,str): #方法2
print(temp1,temp2)
else:
print('输入的格式不对,请检查后重新输入:') 本帖最后由 ButcherRabbit 于 2017-10-12 14:58 编辑
input()在python 3里默认是字符串类型
while True:
temp1=input('输入名字:')
temp2=input('输入学号:')
if isinstance(temp1,str) and temp2.isdigit():
print(temp1,temp2)
else:
print('输入的格式不对,请检查后重新输入:') input函数返回的是str类型,所以你需要将if语句中的第二个判断修改一下:
isinstance(temp2,int)#这里判断永远为假
改为 temp2.isdigit()
页:
[1]