Python打印语句don';行不通 a=input('enter a') b=输入('输入b') c=输入('输入c') def为直角(a、b、c): a、 b,c=排序([a,b,c])#将输入从最小到最大排序 路径=(a*a+b*b-c*c)#
可能存在一些特定于打印函数不起作用的问题(我认为您可能还需要重新考虑一些驱动is_直角函数的逻辑假设) 1) 输入函数创建一个字符串变量。您需要显式地将其转换为int或float变量,以便函数能够正确地使用这些变量Python打印语句don';行不通 a=input('enter a') b=输入('输入b') c=输入('输入c') def为直角(a、b、c): a、 b,c=排序([a,b,c])#将输入从最小到最大排序 路径=(a*a+b*b-c*c)#,python,if-statement,syntax-error,Python,If Statement,Syntax Error,可能存在一些特定于打印函数不起作用的问题(我认为您可能还需要重新考虑一些驱动is_直角函数的逻辑假设) 1) 输入函数创建一个字符串变量。您需要显式地将其转换为int或float变量,以便函数能够正确地使用这些变量 a = input('enter a ') b = input('enter b ') c = input('enter c ') def is_right_angled(a, b, c): a, b, c = sorted([a, b, c])
a = input('enter a ')
b = input('enter b ')
c = input('enter c ')
def is_right_angled(a, b, c):
a, b, c = sorted([a, b, c]) #sort inputs smallest to largest
pathag=(a * a + b * b - c * c) #< 0.1 #a ^2 + b ^2 - c ^2 should = 0 approx
if pathag<0.1: # test "pathag" to to see if close
print ("This is a right triangle")
else: # if "pathag" not close, not "right"
print ("This is NOT a right triangle")
return abs(a * a + b * b - c * c) < 0.1
2) 在上面的代码中,您实际上并没有调用该函数。一定要调用它,否则代码将无法运行。将以下内容添加到脚本末尾:
a = float(input('enter a '))
您的输入是什么?您已经定义了一个函数,但我没有看到对它的任何调用。您发布的内容应该输入3个值,然后一直到底部,然后不做任何其他操作就退出。此外,如果您使用
a
、b
和c
调用函数,则可能会出现类型错误。从输入读取它们产生字符串;您需要将它们更改为数字类型。例如,你可以说,a,b,c=float(a),float(b),float(c)
@aryamcarth,这取决于OP是使用python2还是使用python3。print
引用建议使用Python3,但也可能是Python2。如果它确实是Python2,那么input
的优点是一个完全不同的对话。(在这种情况下,为了安全起见,我建议将ast.literal\u eval(raw\u input())
置于input()
之上。)输入是基于用户的。我输入它们来测试算法,看看是否打印出正确的语句(如果/当我学会如何使其工作时)。即:3,4,5应呈现“是直角三角形”
is_right_angled(a, b, c)