【问题标题】:Error with "unsupported operand type" when converting feet to inches将英尺转换为英寸时出现“不支持的操作数类型”错误
【发布时间】:2013-09-22 00:07:05
【问题描述】:

我正在处理一个家庭作业问题,并收到以下错误:

Traceback (most recent call last):

File "/Users//Dropbox/Homework 3 - 2.py", line 15, in <module>
    conversion = convert_feet_to_inches(get_feet)   
File "/Users//Dropbox/Homework 3 - 2.py", line 4, in convert_feet_to_inches
    calculate_conversion = feet*12 TypeError: 
unsupported operand type(s) for *: 'function' and 'int'

这是我的代码。我正在尝试将英尺转换为英寸:

def convert_feet_to_inches(feet):
    calculate_conversion = feet*12
    return calculate_conversion

def get_feet():
    ask_for_feet = float(input("Please enter number of feet for conversion "))
    return ask_for_feet

def printing_answer():
    print (convert_feet_to_inches)

asking_for_feet = get_feet()
conversion = convert_feet_to_inches(get_feet)
print_answer(printing_answer)

我做错了什么?

【问题讨论】:

    标签: python computer-science


    【解决方案1】:

    我认为您的意思是将asking_for_feet 传递给convert_feet_to_inches 而不是这一行中的函数get_feet

    conversion = convert_feet_to_inches(get_feet)
    

    应该是这样的:

    conversion = convert_feet_to_inches(asking_for_feet)
    

    【讨论】:

    • 你说得对,我修复了那部分,我将最后一行修复为 print_answer = (printing_answer),但现在什么也没有出现,我没有收到错误,我只是输入,程序结束,我不明白为什么它不做乘法
    • @user2803150 在您的 printing_answer 函数中,使用 return 而不是打印。
    • def printing_answer(): return (convert_feet_to_inches) 这是我所做的编辑,我仍然没有收到输出,谢谢你的帮助,我想我只是想一下
    【解决方案2】:

    错误是因为get_feet() 是一个函数,而您将它传递给convert_feet_to_inches(),它正在接受您传递的参数并将其乘以 12。您不能将函数乘以 int,所以这就是错误在说。我想你的意思是通过asking_for_feet。所以改变

    conversion = convert_feet_to_inches(get_feet)
    

    conversion = convert_feet_to_inches(asking_for_feet)
    

    在那之后,你有

    print_answer(printing_answer)
    

    函数print_answer还没有定义,所以修改一下:

    def printing_answer():
        print (convert_feet_to_inches)
    

    def print_answer(answer):
        print (answer)
    

    那么你的最后一行代码是:

    print_answer(conversion)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-14
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 2016-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多