0

所以我试图制作一个程序,要求 3 个数字,然后返回这些数字的乘积(确定长方体的体积)

def cuboid ():
    A = input('Height '),
    B = input('Width '),
    C = input('Depth '),

到目前为止,这使得 PYthon 要求三个值,但我不知道告诉 python 它们不是字符串,而是整数。即我不知道如何使用该int()命令。所以如果在那之后我输入:Volume = A*B*C它会给出一个 TypeError 因为他认为 1,2 和 3 不是整数。

我不知道为什么它不能那样工作,因为粗糙

def o3 (x,y,z):
    print x*y*z

确实有效。提前致谢

4

3 回答 3

1
def input_int(text):
    while True:
        x = raw_input('%s: ' % text) 
        try:
            return int(x)
        except Exception, e:
            print 'Please enter a correct integer'


h = input_int('Height')
l = input_int('Length')
w = input_int('Width')

print 'Result is', h * l * w
于 2012-07-17T10:38:17.127 回答
1

你正在使用 input()你应该使用的地方raw_input()。输入后,您只需要说a = int(a)a 将是一个整数,您可以对其进行普通算术运算。

例子:

def get_cube_dims():
    x = int( raw_input('Enter x:') )
    y = int( raw_input('Enter y:') )
    z = int( raw_input('Enter z:') )
    print 'The volume is: {}'.format(x*y*z)
于 2012-07-17T10:25:54.970 回答
0

这是你想要的吗?

def cuboidv ():
    h=input('enter hieght')
    l=input('enter length')
    w=input('enter width')
    ans=l*w*h
    print ans
于 2012-07-17T10:31:04.630 回答