我在python中的区域问题代码有什么问题?

时间:2017-06-30 21:49:44

标签: python-2.7

j = True
  while j == True:

area = raw_input("Elije la figura geometrica para calcular su area 
 \nCuadrado=1 \nTriangulo=2 \nCirculo=3\n")

if area == 1 :
 acuadrado()

问题在于该区域。它是语法中的东西吗?

1 个答案:

答案 0 :(得分:0)

python2.x中的

raw_input返回一个"字符串"用户输入的表示。您想要对输入进行数值比较,因此您需要在执行比较之前将area变量强制转换为整数(int)。如下所示:

area = int(raw_input("Elije la figura geometrica..")

area = raw_input("Elije ...")
area = int(area)

然后您可以比较int值:

if area == 1 :
        acuadrado()

等...

这样的事情可能会帮助你相处:

def acuadrado():
    print 'acuadrado'

def atriangulo():
    print 'atriangulo'

def acirculo():
    print 'acirculo'


j = True

while j == True:

    area = raw_input("Elije la figura geometrica para calcular su area \nCuadrado=1 \nTriangulo=2 \nCirculo=3\n")

    area = int(area)

    if area == 1 :
        acuadrado()
    elif area == 2:
        atriangulo()
    elif area == 3:
        acirculo()
    else:
        print 'nada'
        j = False

另见How can I convert a string to an int in Python?

希望有所帮助。