首页 > 其他分享 >面对对象练习

面对对象练习

时间:2024-12-09 17:53:35浏览次数:5  
标签:name HP 对象 self 练习 dic 100 面对 def

import time
dic = {}
Controls = {"1": "查看角色", "2": "修炼", "3": "战斗"}
class game:
    def __init__(self, n, g, s):
        self.name = n
        self.age = g
        self.sex = s


    def Make_cultivation(self):
        print("%s 你修炼了一会战力加:100, 血量加:100" % self.name)
        dic["CP"] += 100
        dic["Vitality"] += 100
        dic["HP"] = dic["Vitality"]

    def Beat_monsters(self):
        print("%s 你参加了打怪,生命值减:—500 剩余血量:%s" % (self.name, dic["HP"]))
        dic["HP"] -= 500
        if dic["HP"] <= 0:
            print("%s 你死了!" % self.name)
            return False
        else:
            print("%s 打怪成功!" % self.name)
            return True

    def HP(self):
        if dic["HP"] < dic["Vitality"]:
            time.sleep(1)
            dic["HP"] += 1

    def info(self):
        print("%s 年龄 %s 性别 %s 战力 %s 总血量 %s 剩余血量%s" % (dic["name"], dic["age"], dic["sex"], dic["CP"], dic["Vitality"], dic["HP"]))



while True:
    if not dic:
        name = input("请输入用户名:")
        age = input("请输入年龄:")
        sex = input("请输入性别:")
        dic["name"] = name
        dic["age"] = age
        dic["sex"] = sex
        dic["Vitality"] = 100
        dic["CP"] = 100
        dic["HP"] = 100
        print("创建角色成功!初始血量100,初始战力100")
    else:
        name = dic["name"]
        age = dic["age"]
        sex = dic["sex"]
        obj = game(name, age, sex)
        obj.HP()
        for i in Controls:
            print(i, Controls[i])

        input_Controls = input("请选择操作:")
        if input_Controls == "1":
            obj.info()
        elif input_Controls == "2":
            obj.Make_cultivation()
        elif input_Controls == "3":
            flag = obj.Beat_monsters()
            if not flag:
                break

 

标签:name,HP,对象,self,练习,dic,100,面对,def
From: https://www.cnblogs.com/GDquicksand/p/18595676

相关文章

  • session会话对象。
    什么是session会话对象在jsp中存在的一个内置对象,该对象主要的作用就是浏览器与服务器交互的一个内置对象。该对象的存放的数据,有效期:浏览器只要不关闭,该对象中保存的数据就一直存在。如果30分钟为操作浏览器。也会自动失效。为什么使用session.思考:很多网址中,出现如果......
  • jsp中的9大内置对象。
    jsp的内置对象表示该对象无需自己创建,而是jsp帮你创建好的对象,对象名必须固定。out:输出对象out.print("");把内容输出到网页中out.flush():刷新request:请求对象---获取客户请求时的内容getParamater("参数名"):获取参数setCharacterEncoding("utf-8");设置编码getSes......
  • 洛谷 P5587 打字练习 C语言
    题目:https://www.luogu.com.cn/problem/P5587题目描述R君在练习打字。有这样一个打字练习网站,给定一个范文和输入框,会根据你的输入计算准确率和打字速度。可以输入的字符有小写字母、空格和 .(英文句号),输入字符后,光标也会跟着移动。输入的文本有多行,R君可以通过换行键来......
  • 4.8类和对象-多态
    一)多态的基本概念在C++中,多态(Polymorphism)是面向对象编程的核心特性之一,它允许不同类的对象对同一消息(函数调用)作出不同的响应。简单来说,多态就是“多种形态”,同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。多态的实现方式虚函数(VirtualFunctions):虚......
  • 使用std算法库:使用find算法来处理基础类型与类对象
    在C++的std库中,提供了不少基础的算法工具库,比如最基本的查找,排序等,基本上都是封装了性能极高的查找和排序算法,基本上不需要自己再去琢磨和手写各种计算机算法了,比如快排什么的,直接使用即可。不过这些算法库基本用法挺简单,在基础用法的基础上,还是有一些厉害一点的用法。基......
  • 全网最适合入门的面向对象编程教程:60 Python面向对象综合实例-传感器数据实时绘图器
    全网最适合入门的面向对象编程教程:60Python面向对象综合实例-传感器数据实时绘图器摘要:本文将结合之前内容实现模拟一个传感器系统软件,包括三个线程:传感器线程生成数据并通过串口发送给主机进程;主机进程通过串口接收指令,进行数据滤波和处理后,将处理结果发送给绘图线程;绘图线......
  • 数组练习题14道【C语言】
    一维数组1键盘录入一组数列,利用冒泡排序将数据由大到小排序/*************************************************************************>FileName:work11.c>Author:sgc>Description:键盘录入一组数列,利用冒泡排序将数据由大到小排序>Cre......
  • (王道练习代码仓库)各种变量赋值汇编实战
    C语言代码:#include<stdio.h>intmain(){ intarr[3]={1,2,3}; int*p; inti=5; intj=10; i=arr[2]; p=arr; printf("i=%d\n",i); return0;}汇编代码:    ......
  • 面向对象
    对象的本质对象本质上是一种特殊的数据结构(可以理解成一张表)其中class也就是类,也称为对象的设计图(或者对象的模板)对象在计算机中是什么?当运行java程序时程序是在内存的JVM虚拟机中运行的,而JVM虚拟机是在内存中运行的。也就是当java程序运行的时候说会将虚拟机运行到内存,......
  • 【老白学 Java】对象的前世今生(二)
    对象的前世今生(二)文章来源:《HeadFirstJava》修炼感悟。还记得「对象的起源」一文中关于Object的描述吗?每个类都间接继承自原始对象Object,所以创建对象时会包含自己的和所有继承的元素,需要为它们提供额外的存储空间。这个过程并不是风平浪静的,其中构造器发生了一些......