开发者社区> 问答> 正文

入门 python变量已经定义,为什么报错 ?报错

图片说明
1. birth已经定义,为什么报错
2. 按照代码扫描顺序,在终端中为何不先执行 input('请输入姓名:')

展开
收起
爱吃鱼的程序员 2020-06-23 15:25:13 533 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    我用了scan()会报NameError:name'scan'isnotdefined这个错
    并且可以执行input('请输入姓名:'),是不是编译器的问题?你用的什么编译器呀?
    不用scan()就是正确的
    可能是因为这个错误,让编译器觉得你没有定义birth

    请问scan()函数是干嘛用的

    我把代码改成这样,问题就解决了

    print("请输入姓名:")name=input()print("请输入年份")year=input()birth=2018-int(year)print(name,'同学给你好','年龄为',birth)

    控制台输入name和year之间要用空格隔开

    不要要那个scan()

    问题1:关于birth已经定义,为什么报错?
    答:birth在你的debug中并未成功定义,可见下图绿色方框,系统并没找到year,故而后未成功给bitch赋值。

    问题2:按照代码扫描顺序,在终端中为何不先执行input('请输入姓名:')
    答:请将完整执行过程至结果完整贴出。个人重现你的代码是scan函数不知从何导入,作用不明。重现过程与结果见下图

    学会看报错信息birth未定义

    保存提示birth未定义,可以尝试这样修改即可,望采纳,谢谢!!!

    print("请输入姓名:")
    name=input()
    print("请输入年份")
    year=input()
    birth=2018-int(year)
    print(name,'同学给你好','年龄为',birth)

    2020-06-23 15:25:31
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载