Discuss / Python / 作业:可以对字符进行辩认,但没有输入数字无法辩认,请老师指教

作业:可以对字符进行辩认,但没有输入数字无法辩认,请老师指教

Topic source

i-echo

#1 Created at ... [Delete] [Delete and Lock User]

import math print('求解方程:ax2+bx+c=0') x=input('输入a的值:') y=input('输入b的值:') z=input('输入c的值:') if isinstance(x,(int,float))and isinstance(y,(int,float))and isinstance(z,(int,float)): def quadratic(a,b,c): if a==0 and b==0: return('c==0,否则方程无解') elif a==0 and b!=0: return(-c)/b else: derta=bb-4ac if derta>=0: x1=(-b+math.sqrt(derta))/(2a) x2=(-b-math.sqrt(derta))/(2*a) return x1,x2 else: return('无实数解') a=float(x) b=float(y) c=float(z) print(quadratic(a,b,c)) else: print("参数值异常,无解")

i-echo

#2 Created at ... [Delete] [Delete and Lock User]

例子里面是if not isinstance() 我可以用if isinstance(),然后再多个条件语句可以吗?

因为 input() 认为接受到的为字符,所以无法进行运算 可以看看下面别人的 float() int() 可以将字符转化为数字

i-echo

#4 Created at ... [Delete] [Delete and Lock User]

谢谢,我在下面写过了float() 但是这个程序似乎永远只运行“else”语句输出参数值异常, 而不运行上面的“if”语句,输入abc三个数时也输出参数值异常 远行无报错,这是为什么呢? 谢谢指导!


  • 1

Reply