python游戏人物管理

这两天学Python下面是自己的一个练习
实现功能:

  • 实现游戏人物管理
    可以插入人物
    可以删除人物
    可以查询人物技能
    可以更改人物技能

下面是源代码:

# 实现游戏人物管理
# 		可以插入人物
# 		可以删除人物
# 		可以查询人物技能
# 		可以更改人物技能
listgame=[]     #定义一个列表(目的:在列表中存放字典s)
def insertGame(name,action):#在字典中插入人物和技能
    s={"姓名":name,"技能":action}
    return s
def delGame(name):#获得s字典在listgame中的下标,后面两个函数功能相同
    for i in listgame:
        if i["姓名"]==name:
            m=listgame.index(i)
            return m
        else:
            print("找不到该英雄!")
            return -1
def seletGame(name):#获得s字典在listgame中的下标
    for i in listgame:
        if i["姓名"]==name:
            m1=listgame.index(i)
            return m1
        else:
            print("找不到该英雄!")
            return -1
def changeGame(name):#获得s字典在listgame中的下标
    for i in listgame:
        if i["姓名"]==name:
            m2=listgame.index(i)
            return m2
        else:
            print("找不到该英雄!")
            return -1
a="""
    ---------------------------------------------------------------------------------------------------------
    0、退出  1、增加英雄和技能   2、删除英雄    3、修改英雄技能    4、查看英雄和技能    5、查看所有英雄和技能
    ---------------------------------------------------------------------------------------------------------
"""
print(a)
while 1:
    i=int(input("输入你的选择:"))
    if i==0:#退出循环
        break
    if i==1:
        name=str(input("输入英雄名称:"))
        action=str(input("输入英雄技能:"))
        listgame.append(insertGame(name, action))#使用列表的方法追加列表里的字典元素
    if i==2:
        name=str(input("输入要删除的英雄名称:"))
        if delGame(name)==-1:#查找不到英雄继续输入,不会退出循环
            continue
        else:
            listgame.pop(delGame(name))#使用列表的方法删除列表里的字典元素
    if i==3:
        name = str(input("输入英雄名称:"))
        action=str(input("输入修改后的技能:"))
        if changeGame(name)==-1:#查找不到英雄继续输入,不会退出循环
            continue
        else:
            listgame[changeGame(name)]["技能"]=action#使用字典修改字典里的技能,其中listgame[changeGame(name)]表示字典
    if i==4:
        name =str(input("输入想要查看的英雄:"))
        if seletGame(name)==-1:#查找不到英雄继续输入,不会退出循环
            continue
        else:
            print(listgame[seletGame(name)])
    if i==5:#遍历列表listgame并打印列表元素(字典)
        for j in listgame:
            print(j)

在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值