类型错误:str对象不是callablepython

2024-05-15 23:12:31 发布

您现在位置:Python中文网/ 问答频道 /正文

input=input("select the garment you purchased type 1 for shirt, 2 for pants, 3 for coats: ")

def color(call):
   if call==123:
      colorin=input("Enter your shirt colour, 1 for red, 2 for blue, 3 for green")
    elif call==345:
       colorin=input("Enter your pants colour 1 for black, 2 for blue, 3 for white")
    elif call==678:
       clorin=input("Enter your coat colour 1 for black, 2 for grey, 3 for skyblue")
    else:
       print("invalid")
    return colorin

def shirt(sh):
   if int(sh)==1:
      print("shirt red, cost=$5")
   elif int(sh)==2:
      print("shirt blue, cost=$6")
   elif int(sh)==3:
      print("shirt green, cost=$7")
   else:
      print("enter a valid color")
   return print("Thank you for shopping")

def pants(pa):
   if int(pa)==1:
      print("pant black, cost=$10")
   elif int(pa)==2:
      print("pant blue, cost=$11")
   elif int(pa)==3:
      print("pant white, cost=$12")
   else:
      print("enter a valid color")
   return print("Thank you shopping")

def coat(ca):
   if int(ca)==1:
      print("coat black, cost=$50")
   elif int(ca)==2:
      print("coat grey, cost=$55")
   elif int(ca)==3:
      print("coat skyblue, cost=$60")
   else:
      print("enter a valid color")
   return print("Thank you shopping")



if int(input) == 1:
   sc = color(123)
   las=shirt(sc)
else:
   pass
if int(input) == 2:
   pc=color(456)
   lap=pants(pc)
else:
   pass
if int(input) == 3:
   cc=color(678)
   lac=coat(cc)
else:
   print("enter a valid number")

代码结束

错误:

^{pr2}$

Tags: youforinputifdefcallelsecolor
2条回答

不要调用与函数input相同的变量名

看看你的代码。不太明白你第一句话的目的:

input=input("select the garment you purchased type 1 for shirt, 2 for pants, 3 for coats: ")

这可能会用您在命令行中键入的任何字符串覆盖input()函数。因此,后面的函数call input()与该字符串一起使用,该字符串不是函数,也不可调用。在

相关问题 更多 >