【问题标题】:`TypeError: bad operand type for unary +: 'str'``TypeError:一元+的错误操作数类型:'str'`
【发布时间】:2021-01-15 10:10:27
【问题描述】:

我的程序运行了,但是在我输入答案后,我不断收到一个错误提示

"TypeError: 一元+的错误操作数类型: 'str'

def calculateCaloriesFromFat(fatGrams):
    caloriesFromFat = fatGrams * 9
    return caloriesFromFat


def calculateCaloriesFromCarbs(carbGrams):
    caloriesFromCarbs = carbGrams * 4
    return caloriesFromCarbs
  

def main():
    userFatGrams = float(input("How many Fat Grams?"))
    userCarbGrams = float(input("How many Carb Grams?"))

    caloriesFromFat = calculateCaloriesFromFat(userFatGrams)
    caloriesFromCarbs = calculateCaloriesFromCarbs(userCarbGrams)

    print("calories from fat", + format(caloriesFromFat, "f"),
          "calories from carbs", + format(caloriesFromCarbs, "f"))


main()

【问题讨论】:

    标签: python typeerror


    【解决方案1】:

    这里不需要+ 标志:

    print("calories from fat", format(caloriesFromFat, "f"),
          "calories from carbs", format(caloriesFromCarbs, "f"))
    
    

    【讨论】:

      【解决方案2】:

      以下应该有效:

      def calculateCaloriesFromFat(fatGrams):
          caloriesFromFat = fatGrams * 9
          return caloriesFromFat
      
      
      def calculateCaloriesFromCarbs(carbGrams):
          caloriesFromCarbs = carbGrams * 4
          return caloriesFromCarbs
      
      def main():
          userFatGrams = float(input("How many Fat Grams?"))
          userCarbGrams = float(input("How many Carb Grams?"))
      
          caloriesFromFat = calculateCaloriesFromFat(userFatGrams)
          caloriesFromCarbs = calculateCaloriesFromCarbs(userCarbGrams)
      
          print("calories from fat " + format(caloriesFromFat, "f") + "calories from carbs " + format(caloriesFromCarbs, "f"))
      
      main()
      

      但是,请考虑将format(caloriesFromFat, "f") 更改为:

      print("calories from fat " + str(caloriesFromFat) + " calories from carbs " + str(caloriesFromCarbs))
      

      通过这样做,您将消除不需要的任何多余的零。

      【讨论】:

        猜你喜欢
        • 2013-03-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-02
        • 1970-01-01
        相关资源
        最近更新 更多