君子好逑 发表于 2020-5-1 00:05:22

异常

temp=int(input())语句有时候会出现异常
具体情况在帖子的图片里,求大佬解惑

txxcat 发表于 2020-5-1 00:09:39

int是把数字字符转或者其他类型的数字换成整数,你输了一串字符串,当然就报错了。

zltzlt 发表于 2020-5-1 06:41:50

int(input()) 是表示将用户输入的内容转化为整数,你输入的不是整数就会报错。

君子好逑 发表于 2020-5-1 11:14:59

zltzlt 发表于 2020-5-1 06:41
int(input()) 是表示将用户输入的内容转化为整数,你输入的不是整数就会报错。

但我是在调试的时候出现异常的,啥都还没输入啊

zltzlt 发表于 2020-5-1 11:16:27

君子好逑 发表于 2020-5-1 11:14
但我是在调试的时候出现异常的,啥都还没输入啊

你调试的工具自己帮你输入一个命令,输入的命令不是整数,会报错。

把你的完整代码发上来看看。

君子好逑 发表于 2020-5-1 11:17:48

zltzlt 发表于 2020-5-1 11:16
你调试的工具自己帮你输入一个命令,输入的命令不是整数,会报错。

把你的完整代码发上来看看。

def chart():
    print('|--------欢迎进入通讯录程序--------|')
    print('|-------- 1:查询联系人资料 --------|')
    print('|-------- 2:插入新的联系人 --------|')
    print('|-------- 3:删除已有联系人 --------|')
    print('|-------- 4:退出通讯录程序 --------|')
    print('|-------- h:操作指令码重选 --------|')
#空白通讯录
txl={}
result=''
while (1):
    chart()
    temp=int(input("请输入相关指令码:"))
    if(temp==1):
      key=input('请输入联系人姓名:')
      if (key=='H')or(key=='h'):
            continue
      while (key not in txl):
            print('输入有误!!!')
            key=input('请重新输入联系人姓名:')
            if (key=='H')or(key=='h'):
                continue
            elif (key=='4'):
                break
      result=result+key+':'+txl
      print(result)
      result=''
    elif(temp==2):
      key=input('请输入联系人姓名:')
      if (key=='H')or(key=='h'):
            continue
      if (key in txl):
            print('您输入的姓名已在通讯录中--->',end='')
            result=result+key+':'+txl
            print(result)
            result=''
            choose=input('是否修改用户资料(YES/NO):')
            if(choose=='yes')or(choose=='YES'):
                value=input('请输入联系人电话:')
                txl=value
      else :
            value=input('请输入联系人电话:')
            txl=value
            result=result+key+':'+txl
            print(result)
            result=''
    elif(temp==4):
      print('|--------感谢使用通讯录程序--------|')
      break
    elif(temp==3):
      key=input('请输入联系人姓名:')
      if (key=='H')or(key=='h'):
            continue
      while (key not in txl):
            print('输入有误!!!')
            key=input('请重新输入联系人姓名:')
      txl.pop(key)

zltzlt 发表于 2020-5-1 11:18:39

君子好逑 发表于 2020-5-1 11:17
def chart():
    print('|--------欢迎进入通讯录程序--------|')
    print('|-------- 1:查询联系人 ...

看报错信息应该是你的调试工具自己帮你输入不是整数的命令

君子好逑 发表于 2020-5-1 11:18:57

zltzlt 发表于 2020-5-1 11:16
你调试的工具自己帮你输入一个命令,输入的命令不是整数,会报错。

把你的完整代码发上来看看。

有的时候编译会出现那个异常,有的时候不会

zltzlt 发表于 2020-5-1 11:19:23

君子好逑 发表于 2020-5-1 11:18
有的时候编译会出现那个异常,有的时候不会

不用调试,直接运行,应该不会出这个问题

君子好逑 发表于 2020-5-1 11:20:03

zltzlt 发表于 2020-5-1 11:18
看报错信息应该是你的调试工具自己帮你输入不是整数的命令

这样吗,那就是说代码没问题是吧,大佬

zltzlt 发表于 2020-5-1 11:20:50

君子好逑 发表于 2020-5-1 11:20
这样吗,那就是说代码没问题是吧,大佬

没帮你试,直接运行应该不会出现那个问题(除非你输入的不是整数)

君子好逑 发表于 2020-5-1 11:20:54

zltzlt 发表于 2020-5-1 11:19
不用调试,直接运行,应该不会出这个问题

谢谢大佬,请收下在下的膝盖
页: [1]
查看完整版本: 异常