在Python

时间:2015-04-26 16:30:54

标签: python

当我将recipe附加到list并打印每个列表时,此错误会出现在Python shell中:

  

粗体代表用户输入

以下是一个示例互动:

Welcome to Mohamed Ismail's Recipe Viewer

Add Recipe (add), Load Recipe (load) or Delete Recipe (delete)

add

Input recipe id = 1

Input recipe name = Cake

Summary

Recipe id = 1

Recipe for Cake

Save Recipe?

Yes

...

Saved Succesfully

Add Recipe (add), Load Recipe (load) or Delete Recipe (delete)

load

Here are your existing recipe id's

Loading...

['1']

Select Recipe by id 1

[('Recipe id =', '1')]

    [<function function.<locals>.fileb at 0x105920400>] # this is the error
Go back? or exit

这是我的代码:

import time

currentrecipes = []
rp1 = []
rp2 = []


print("Welcome to Mohamed Ismail's Recipe Viewer")
time.sleep(1)

def function():
     print('Add Recipe (add), Load Recipe (load) or Delete Recipe (delete)')
     choice = input()
     if choice == 'add':
            a = input('Input recipe id = ')
            b = input('Input recipe name = ')
            filea = ("Recipe id =",a)
            fileb = ("Recipe for =",b)
            print('')
            print("Summary")
            print("------------------")
            file1 = print("Recipe id =",a)
            file2 = print("Recipe for",b)

            def file():
                return filea
            def fileb():
                return fileb
            file()
            fileb()
            print('Save Recipe?')
            userinput = input()
            if userinput == 'Yes':
                  if a == '1':
                       currentrecipes.append(a)
                       rp1.append(file())
                       rp2.append(fileb())
                       print('...')
                       time.sleep(0.5)
                       print("Saved Sucesfully")
                       function()
                  else:
                       print("Choose a recipe id of 1")
                       print("Going back...")
                       time.sleep(2)
                       function()
            else:
                 function()
     elif choice == 'load':
          if currentrecipes == []:
              print("Error 619: You have no current recipes")
              function()
          else:
              print("Here are your existing recipe id's")
              print("Loading...")
              time.sleep(2)
              print(currentrecipes)
              option = input("Select Recipe by id ")
              if option == '1':
                    print(rp1)
                    print(rp2)
                    userchoice = input("Go back? or exit ")
                    if userchoice == 'Go back':
                        function()
             else:
                  exit()    


     elif choice == 'delete':
          if currentrecipes == []:
              print("Error 619: You have no current recipes")
              function()
          else:

              print("Here are your existing recipe id's")
              print("Loading...")
              time.sleep(2)
              print(currentrecipes)
              option = input("Which recipe do you wish to delete ")
              if option == '1':
                   if '1' not in currentrecipes:
                   print("Error 404: Recipe is not in saved recipes")
                   function()
              else:
                   currentrecipes.remove('1')
                   print('Loading...')
                   time.sleep(1)
                   print(currentrecipes)
                   time.sleep(0.5)
                   print("Deleted Succesfully")

     else:
          print("Please select one of the 3 options")
          time.sleep(1)
          function()

function()

1 个答案:

答案 0 :(得分:0)

您的变量fileb具有两个&#39;功能&#39;。 它是函数和变量的名称。 尝试更改功能名称。