Python项目:创建一个程序来跟踪向导可以携带的项目

2024-04-29 02:07:19 发布

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

show不起作用,它不会显示我的任何项目

在代码的第一个文件中,我有以下内容:

在项目.py公司名称:

list(inventory_list):
inventory = ["a wooden staff", "a wizard hat", "a cloak of invisibility",

"some elven bread", "an unknown potion", "a scroll of uncursing",

"a scroll of invisibility", "a crossbow", "a wizard's cloak"]
item = inventory.pop()
item = inventory.pop(1)
item = inventory.pop(2)
item = inventory.pop(3)
item = inventory.pop(4)
item = invnetory.pop(5)
item = inventory.pop(6)
item = inventory.pop(7)
item = inventory.pop(8)

在我的另一个文件中主.py文件看起来像这样。在

^{pr2}$

另一个问题是我需要单独的文件还是可以把它们放在一个文件中?在


Tags: 文件of项目代码pyshow公司item
1条回答
网友
1楼 · 发布于 2024-04-29 02:07:19

我觉得这更符合你的要求。另外,我会帮助你,因为我可以从你的代码中看到一些你正在挣扎的地方,但是请检查关于向SO发布问题的规则,因为正如前面提到的,这不符合配置文件。同时也要检查我的不同之处,并试图理解原因。在

import random
inventory_list = []

def display_menu(inventory_list):
    random.shuffle(inventory_list)
    print("The Wizard Inventory Program")
    print()
    print("COMMAND MENU")
    print("show - Show all items")
    print("grab - Grab an item")
    print("edit - Edit an item")
    print("drop - Drop an item")
    print("exit - Exit program")

def invalid_number(num):
    try:
        x = inventory_list[num]
        return False
    except IndexError:
        return True

def show(inventory_list):
    for i, item in enumerate(inventory_list):
        print("{}. {}".format(i, item))
    print()

def grab(inventory_list):
    item = input("Name: ")
    inventory_list.append(item)
    print(item + " was added.\n")

def drop(inventory_list):
    number = int(input("Number: "))
    if invalid_number(number):
        print("Invalid item number.\n")
    else:
        orig_inp = inventory_list[number]
        del inventory_list[number]
        print("'{}' was deleted.\n".format(orig_inp))

def edit(inventory_list):
    number = int(input("Number: "))
    if invalid_number(number):
        print ("Invalid item number.\n")
    else:
        orig_inp = inventory_list[number]
        new_inp = input("What would you like to call '{}' instead? ".format(orig_inp))
        inventory_list[number] = new_inp
        print("'{}' was edited to '{}'.\n".format(orig_inp, new_inp))

def main():
    inventory_list = ["a wooden staff", "a wizard hat", "a cloak of invisibility",

    "some elven bread", "an unknown potion", "a scroll of uncursing",

    "a scroll of invisibility", "a crossbow", "a wizard's cloak"]
    display_menu(inventory_list)
    while True:
        command = input("Command: ").lower()
        if command == "show":
            show(inventory_list)
        elif command == "grab":
            grab(inventory_list)
        elif command == "drop":
            drop(inventory_list)
        elif command == "edit":
            edit(inventory_list)
        elif command == "exit":
            break
        else:
            print("Not a valid command. Please try again.\n")
    print("Bye!")

if __name__== "__main__":
    main()

相关问题 更多 >