【python】基础知识类的语法功能讲解

news2024/11/28 14:40:28

Python代码定义了一个名为Calculation的类,用于执行基础的数学运算(加法、减法、乘法、除法和取模)。下面我将详细解释各个部分的功能,并以列表形式总结:
在这里插入图片描述

类定义:

class Calculation: 定义了一个名为Calculation的类,它可以创建具有特定属性和方法的对象。
初始化方法:

def init(self, a, b): 是类的构造函数,当创建类的实例时自动调用。
self.a = a 和 self.b = b 将传入的参数a和b分别作为对象的属性存储起来。
运算方法:

def add(self): 返回self.a与self.b的和。
def sub(self): 返回self.a与self.b的差。
def mul(self): 返回self.a与self.b的乘积。
def div(self): 返回self.a与self.b的商(假设b不为0)。
def mod(self): 返回self.a除以self.b的余数(同样假设b不为0)。
主程序逻辑:

在if name == ‘main’:下的代码块在直接运行此脚本时被执行。
通过用户输入获取两个数字a和b,并创建一个Add类的实例obj。
使用无限循环提供菜单选项让用户选择要执行的运算类型。
根据用户的选择调用相应的类方法计算结果并打印输出。
当用户选择退出(即输入6)时,跳出循环并显示结束语句。
总结成列表形式如下:

类Calculation包含以下功能:

初始化:设置两个数值成员变量a和b。

运算方法:
加法:返回a + b的结果。
减法:返回a - b的结果。
乘法:返回a * b的结果。
除法:返回a / b的结果(注意除数不能为零)。
取模:返回a % b的结果。
主程序流程:

获取用户输入的两个数。

创建Calculation类的实例。

显示操作菜单并循环获取用户选择。

调用相应的方法执行运算并打印结果。
用户选择退出时终止程序。

#创建一个加法类函数
class Add:
    def __init__(self,a,b):
        self.a=a
        self.b=b
    def add(self):
        return self.a+self.b
        
    def sub(self):
        return self.a-self.b
            
    def mul(self):
        return self.a*self.b
        
    def div(self):
        return self.a/self.b
        
    def mod(self):
        return self.a%self.b
            
if __name__ == '__main__':
    a=int(input("请输入第一个数:"))
    b=int(input("请输入第二个数:"))
    obj=Add(a,b)
    while True:
        print("1.加法")
        print("2.减法")
        print("3.乘法")
        print("4.除法")
        print("5.取模")
        print("6.退出")
        c=int(input("请输入选项:"))
        if c==1:
            print(obj.add())
        elif c==2:
            print(obj.sub())
            
        elif c==3:
            print(obj.mul())
            
        elif c==4:
            print(obj.div())
            
        elif c==5:
            print(obj.mod())
            
        elif c==6:
            break
        
    print("欢迎下次使用")
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1392658.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Simulink|双机并联自适应虚拟阻抗下垂控制仿真模型

目录 主要内容 模型研究 结果一览 下载链接 主要内容 风电高渗透率下,电力系统对风电场频率调节能力提出了技术要求。考虑风机惯性控制和变桨距控制的频率响应能力,提出将储能与风电自身调频手段相结合,参与系统频率调节。模型…

JSP简单学习

jsp是在html中嵌入java代码 jsp也是在j2ee服务端中的java组件 第一次运行 在第一次运行jsp代码时会经历以下步骤,将jsp转为java代码,将java代码转为class文件。 所以通常会比较慢,编译后就好多了。 四大作用域 requestsessionpageapplica…

25考研英语复习计划

Hello各位小伙伴大家好,今天要给大家分享的是英语备考计划,大家可以作为参考,制定适合自己的备考计划。 【英一/二】 英语分为英一、英二,一般学硕英一,专硕英二。 英一要比英二难度大。 【复习计划】 1-2月&#xf…

python - 无法正常显示xlabel / ylabel

python 无法正常显示xlabel / ylabel 如上述所示, 第一个子图是不带投影的,可以正常显示横纵轴标签和标题第二个子图带有投影,横纵轴通过手动设置范围,可以正常显示横纵轴标签和标题第三个子图带有投影,横纵轴的tick …

基于LDA的评论大数据的分析及主题建模

1.微博的关键词大数据采集; 已完成,待优化 2.LDA 错误1:使用了import pyLDAvis.sklearn,提示没有模块no module named pyldavis.sklearn。 默认安装 pyLDAvis3.4.1,最后降级处理,解决方式: …

Java精品项目源码springboot面向社区养老服务的应用系统(编号V71)

Java精品项目源码springboot面向社区养老服务的应用系统(编号V71) 大家好,小辰今天给大家介绍一个面向社区养老服务的应用系统,演示视频公众号(小辰哥的Java)对号查询观看即可 文章目录 Java精品项目源码springboot面向社区养老…

pve虚拟机的改名和修改ID

PVE的虚拟机名字在web界面是无法修改id和名字的。要注意id和名字不能重。 在使用备份时就发现虚拟机是以虚拟机id作为唯一标识,如果有多台pve节点,但共用同一个nfs目录备份或使用同一个pbs进行备份时就必须保障id的唯一性。这时可以使用这个方法来进行补…

maven无法识别本地maven仓库包解决方案

前言:由于本地maven仓库已经有了相关依赖包,idea还是去远程仓库下载(不知何原因,生产上到远程仓库的网络突然不通了),故需要自己本地上传相关包到生产主机并修改setttings文件来强制读取本地仓库方案 settings文件修改如下方式即…

【Gradle】Maven-Publishing

使用Java开发完成一个模块或者一个基础框架需要提供给团队项目使用,这个时候有两种方式可提供,一是提供源码,二是提供编译构建好的jar包供使用,这个时候需要讲构建好的包发布到公司的私服(公司maven仓库)&a…

最新版git2.43安装、记住用户名和密码以及tortoisegit2.15使用

一、下载git 打开git官网地址:https://git-scm.com/进行下载 下载完安装,一直next就好,如果愿意就可以改下安装路径,改在d盘。 具体可以参考:git安装教程 二、安装完下载小乌龟以及中文语言包 下载地址:…

SQL性能分析

SQL性能分析 1、SQL执行频率 ​ MySQL 客户端连接成功后,通过 show [session|global] status 命令可以提供服务器状态信 息。通过如下指令,可以查看当前数据库的INSERT、UPDATE、DELETE、SELECT的访问频次: -- session 是查看当前会话 ; …

【Maven】009-Maven 简单父子工程搭建

【Maven】009-Maven 简单父子工程搭建 文章目录 【Maven】009-Maven 简单父子工程搭建一、需求说明1、结构2、第三方库 二、工程搭建1、父工程第一步:创建父工程第二步:引入公共依赖 lombok 和管理 hutool 依赖版本 2、公共子模块第一步:创建…

越来越多的人学习PMP,2024年考PMP还有价值吗?

转管理是大部分人30人的想法,尤其是 IT行业有个 "35大关”考PMP的人是最多的。 “经验式管理终将成为过去,专业式管理才是时代趋势”,要想做好一个项目经理,系统的项目管理知识和项目经验缺一不可。经验是需要积累的&#x…

spring boot学习第七篇:通过spring boot使用redis

1、pom.xml文件里面增加如下依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 2、yml文件增加如下配置&#xff1a; redis:host: loc…

pytest -- 进阶使用详解

pytest-html⽣成报告 Pytest-HTML 是⼀个插件&#xff0c;它可以⽣成漂亮且易于阅读的 HTML 测试报告。 pytest-html ⽣成报告的步骤 ① 安装 pytest-html 插件&#xff1a; pip install pytest-html ② 运⾏测试并⽣成报告&#xff1a; file name:main.pyimport pytest&qu…

自动驾驶3.0时代,大模型将重塑竞争格局,谁将笑到最后?

“毫末DriveGPT发布200天左右的时间&#xff0c;已经完成了亿级公里量产驾驶数据训练&#xff0c;累积高达480万段Clips的高质量测试。” 在2023&#xff08;第七届&#xff09;高工智能汽车年会上&#xff0c;毫末智行上海研发中心负责人孙宣峰在发表《自动驾驶 3.0 时代&…

NAS入门(学习笔记)

文章目录 AutoMLNAS初期NAS当前NAS框架One-Shot NAS权重共享策略 Zero-Shot NASZen-NASNASWOTEPENAS 参考资料 AutoML 深度学习使特征学习自动化 AutoML 使深度学习自动化 自动化机器学习 (automated machine learning) 是一种自动化的数据驱动方法, 并做出一系列决策。 按…

Flutter 综述

Flutter 综述 1 介绍1.1 概述1.2 重要节点1.3 移动开发中三种跨平台框架技术对比1.4 flutter 技术栈1.5 IDE1.6 Dart 语言1.7 应用1.8 框架 2 Flutter的主要组成部分3 资料书籍 《Flutter实战第二版》Dart 语言官网Flutter中文开发者社区flutter 官网 4 搭建Flutter开发环境参考…

如何提高匹配的速度

基于形状的匹配&#xff0c;改进了无数次&#xff0c;其实已经很满意了。 想起刚入门机器视觉那会儿&#xff0c;我们写的代码&#xff0c;无论c还是c#的&#xff0c;都是调用人家的函数&#xff0c;从来没想过&#xff0c;自己有一天把这些函数代替了。 那时候调用evision的…

GaussDB技术解读系列:5分钟带您了解DRS录制回放

一、什么是DRS录制回放&#xff1f; DRS录制回放是将源数据库发生的真实业务流量&#xff0c;在目标数据库模拟执行&#xff0c;从而观察和检验目标数据库的功能和性能表现。录制回放主要分为录制、回放两个阶段&#xff0c;录制过程是从源数据库上将所需时间段内的全部SQL原语…