我怎样才能将这些输入分开并仍然使它们浮动?
How can I separate these inputs and still make them a float?
三角形根据边长可分为等边三角形、等腰三角形
或斜角肌。等边三角形的所有 3 条边的长度都相同。等腰
三角形的两条边等长,第三条边长不同
长度。如果所有边的长度都不同,则三角形是不等边三角形。
编写一个程序,从用户那里读取三角形 3 条边的长度。
显示指示三角形类型的消息
这是我的代码,它不起作用:
#this code doesn't work for some reason:
s1, s2, s3 = float(input('Enter three sides (separated by comma): ').split(','))
if s1 == s2 and s2 == s3:
print('Equilateral')
elif (s1 == s2 and s2 != s3) or (s1 == s3 and s2 != s3) or (s2 == s3 and s1 != s2):
print('Isosceles')
else:
print('Scalene')
我错过了什么?
您的代码不起作用的原因是 split()
是一个字符串函数。您不能将它用于整数或浮点数。
所以,它需要像这样
s1, s2, s3 = input('Enter three sides (separated by comma): ').split(',')
您似乎在尝试将字符串列表转换为浮点数列表。这不起作用。
我会用这样的东西:
str1, str2, str3 = input('Enter three sides (separated by comma): ').split(',')
s1 = float(str1)
s2 = float(str2)
s3 = float(str3)
或者列表理解:
s1, s2, s3 = [float(s) for s in input('Enter three sides (separated by comma): ').split(',')]
三角形根据边长可分为等边三角形、等腰三角形 或斜角肌。等边三角形的所有 3 条边的长度都相同。等腰 三角形的两条边等长,第三条边长不同 长度。如果所有边的长度都不同,则三角形是不等边三角形。 编写一个程序,从用户那里读取三角形 3 条边的长度。 显示指示三角形类型的消息
这是我的代码,它不起作用:
#this code doesn't work for some reason:
s1, s2, s3 = float(input('Enter three sides (separated by comma): ').split(','))
if s1 == s2 and s2 == s3:
print('Equilateral')
elif (s1 == s2 and s2 != s3) or (s1 == s3 and s2 != s3) or (s2 == s3 and s1 != s2):
print('Isosceles')
else:
print('Scalene')
我错过了什么?
您的代码不起作用的原因是 split()
是一个字符串函数。您不能将它用于整数或浮点数。
所以,它需要像这样
s1, s2, s3 = input('Enter three sides (separated by comma): ').split(',')
您似乎在尝试将字符串列表转换为浮点数列表。这不起作用。
我会用这样的东西:
str1, str2, str3 = input('Enter three sides (separated by comma): ').split(',')
s1 = float(str1)
s2 = float(str2)
s3 = float(str3)
或者列表理解:
s1, s2, s3 = [float(s) for s in input('Enter three sides (separated by comma): ').split(',')]