鱼C论坛

 找回密码
 立即注册
查看: 972|回复: 7

求问int的错误。。

[复制链接]
发表于 2019-2-14 10:50:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. a=input("请输入数字")
  2. while a.isdigit():
  3.     a =int(a)
  4.     if a >=90 and a<=100:
  5.         print("A")
  6.     elif a>=80:
  7.         print("B")
  8.     elif a<=80:
  9.         print("C")
  10. print("error")
复制代码


idle中会报错。。
报错如下:
Traceback (most recent call last):
  File "D:/python/while.py", line 2, in <module>
    while a.isdigit():
AttributeError: 'int' object has no attribute 'isdigit'
麻烦大家帮忙指导下,谢谢了。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-2-14 10:53:33 | 显示全部楼层
你是用的python2吧。
改用python3或第一行改为a=raw_input("请输入数字")
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-14 10:56:03 | 显示全部楼层
冬雪雪冬 发表于 2019-2-14 10:53
你是用的python2吧。
改用python3或第一行改为a=raw_input("请输入数字")

谢谢您的回答,我用的是python3.71
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-14 10:58:09 | 显示全部楼层
把while改成if
因为循环里面将 a 修改为了int,再次进入循环判断就会报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-14 11:07:16 | 显示全部楼层
seriousme 发表于 2019-2-14 10:56
谢谢您的回答,我用的是python3.71

我弄错了。问题出现再循环内的a =int(a),这是a已经变成整数了,再次循环判断a.isdigit()就出错了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-14 11:13:14 | 显示全部楼层
变量a又重新给定义成int类型了,whil判断肯定会出错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-14 11:13:58 | 显示全部楼层
BngThea 发表于 2019-2-14 10:58
把while改成if
因为循环里面将 a 修改为了int,再次进入循环判断就会报错

谢谢。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-14 11:16:12 | 显示全部楼层
冬雪雪冬 发表于 2019-2-14 11:07
我弄错了。问题出现再循环内的a =int(a),这是a已经变成整数了,再次循环判断a.isdigit()就出错了。

谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-13 23:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表