首页 > 编程语言 >简单的python面向对象案例——跑步或吃饭

简单的python面向对象案例——跑步或吃饭

时间:2023-07-03 17:44:42浏览次数:43  
标签:name weight python self 面向对象 num 跑步 input

个人学习,仅供参考

要求

  1. 对象:小明
  • a.属性:姓名,体重

  • b.方法:跑步,吃东西 (每次跑步会减掉0.1kg,每次吃东西增加0.2kg)

  1. 输入名字以初始体重

  2. 选择跑步或吃东西,输入次数

  3. 打印当前体重

代码如下:

#定义一个类
class Person(object):
    #公共属性
    def __init__(self,name,weight):
        self.name = name
        self.weight = weight

    #打印
    def __str__(self):
        return f'{self.name}当前的体重为{self.weight:.1f}kg'

    #公共方法
    #跑步
    def run(self,num):
        self.weight -= (num * 0.1)

    #吃东西
    def eat(self,num):
        self.weight += (num * 0.2)

#实例化小明对象
name = input('请输入名字:')
weight = float(input('请输入初始体重:'))

p1 = Person(name,weight)
while True:
    i = int(input('想要干什么?(1-跑步,2-吃东西,3-结束):'))
    if i == 1:
        num = int(input('请输入要跑步的次数:'))
        p1.run(num)
        print(p1)
    elif i == 2:
        num = int(input('请输入要吃东西的次数:'))
        p1.eat(num)
        print(p1)
    elif i == 3:
        break
    else:
        print('请输入正确的编号')

简单运行结果如下:
image

标签:name,weight,python,self,面向对象,num,跑步,input
From: https://www.cnblogs.com/unclev-123/p/17523493.html

相关文章

  • 在Jupyter笔记本中使用Python与GPT-4进行交互
    在这篇文章中,我们将讨论如何在Jupyter笔记本中使用Python与GPT-4(一种强大的自然语言处理模型)结合进行处理。尽管OpenAI并未特地发布名为"GPT-4"的模型,但我们可以使用现有的GPT-3作为参考。如OpenAI未来发布了GPT-4,其与GPT-3的用法将会非常相似。在Jupyter笔记本中使用Python与GPT......
  • 记一次python消费kafka进程持续消耗内存问题
    前提:python写了一个kafka消费的脚本,脚本中消费kafka消息并将消费到的数据放在一个线程池中进行业务代码处理,使用supervisor管理这个脚本进程遇到问题:这个进程占用的内存会越来越大,知道将机器内存消耗完排查:网上找了一堆内存分析工具,好像都需要预埋代码,或者重新启动一个进程,全扯......
  • python基础35 网络编程 软件开发架构和七层协议
    软件开发架构网络编程我们要基于网络来编写一款B/S或者C/S架构的软件,比如:ATM,我们写的只是ATM的单机版本,没有接入网络系统,别人无法访问到的目的以ATM为例,现在我们想把之前写的ATM系统编程基于网络传输的,别人如果想用,就必须把客户端下载到本地电脑上,已登录为例,用户把用......
  • Python之Mixins机制
    Mixins机制classVehicle:#交通工具passclassFlyMinix:"""将主类中有多个子类要继承的方法单独拿出来,重新定义一个类,将这个有给有需要的子类继承,在主类中不再写这个方法"""deffly(self):"""跟飞行相关的功能......
  • python 文件操作
    文件介绍文本文件可以使用记事本软件打开txt,py,md,json二进制文件不能使用记事本软件打开音频文件mp3视频文件mp4....图片png,jpg,gif,exe文件操作打开文件open()rwa是⽂本⽅式打开,适⽤于⽂本⽂件,会对⼆进制进⾏编码转换rbwbab是⼆进制......
  • python configparser模块的应用
    1、获取所有sectionimportconfigparser config=configparser.ConfigParser()config .read('文件所在的路径',encoding='utf-8')ret=config .sections()print(ret) 2、获取指定section下所有的键值对importconfigparser config=configparser.ConfigParser()......
  • python pytest 参数化的几种方式
    在pytest框架中,可以使用多种方式进行参数化测试。以下是一些常见的参数化方式及其示例:使用@pytest.mark.parametrize装饰器:可以使用pytest提供的@pytest.mark.parametrize装饰器来指定参数化测试的参数。下面是一个示例:[email protected]("num,expecte......
  • Python 转 Byte
    Python转Byte:详细介绍Python是流行的编程语言之一,拥有广泛的用途。在Python中,我们经常需要将数据从一种格式转换为另一种格式。其中一个转换的方式是将Python对象转换为字节数据,或者反过来。这篇文章将深入介绍Python转换为字节数据。什么是Byte?在计算机科学中,字......
  • python pytest框架文件结构
    pytest框架的文件结构相对灵活,没有强制要求特定的文件结构。然而,以下是一种常见的pytest框架文件结构示例:测试文件:测试文件是编写测试用例的主要部分,通常以test_开头,并以.py为扩展名。例如,test_example.py。测试函数:在测试文件中,测试用例通常以函数的形式存在。测试函数的命......
  • 关于python 跨域处理方式详解
    关于Python跨域处理方式详解跨域是指在浏览器中,一个网页的脚本试图访问另一个网页的脚本时,由于浏览器的同源策略,会出现跨域问题。Python作为一种常用的后端语言,也需要处理跨域问题。本文将详细讲解Python跨域处理的方式。什么是跨域在浏览器中,同源策略是一种安全机制,它限制了一......