1.创建一个类,类A中定义了一个方法,该方法能接受3个参数根据参数判断是做加法还是减法并返回计算结果;

创建,一个,定义,方法,接受,参数,根据,判断,加法,还是,减法,返回,计算结果 · 浏览次数 : 3

小编点评

**类 A** ```python class A: def cal(self, x, y, z): if z == '+': return x + y elif z == '-': return x - y else: print('error') ``` **类 B** ```python class B(A): def cal1(self, x, y, z): if z == '/': return x / y elif z == '*': return x * y else: return super().cal(x, y, z) ``` **使用方法** ```python a = A() b = a.cal(3, 4, '+') print(b) ``` **运行结果** ```  2 ``` **总结** 该代码实现了一个继承关系,其中类 B 重写了父类 `A` 的 `cal` 方法。当 `z` 被设置为 `'+'`、`'-'`或 `'*'` 时,类 B 的 `cal1` 方法将执行四则运算并返回计算结果。否则,它将调用父类的 `cal` 方法。

正文


class
A: def cal(self,x,y,z): if z=='+': return x+y if z=='-': return x-y else: print('error') a=A() b=a.cal(3,4,'+') print(b)

运行结果:

 

2.延伸:创建一个类,类B继承A类(第一题中的A类),并重写之前的加减法方法,能够实现四则运算并返回计算结果,在另一个文件中使用这个类。

 
类B里面的方法名可以换一个如 cal1,也可以不变
1
class B(A): 2 3 def cal1(self,x,y,z): 4 if z=='/': 5 return x/y 6 if z=='*': 7 return x*y 8 else: 9 return super().cal(x,y,z) 10 11 a1=B() 12 b1=a1.cal1(3,4,'+') 13 print(b1)

运行结果:

 

与1.创建一个类,类A中定义了一个方法,该方法能接受3个参数根据参数判断是做加法还是减法并返回计算结果;相似的内容:

1.创建一个类,类A中定义了一个方法,该方法能接受3个参数根据参数判断是做加法还是减法并返回计算结果;

class A: def cal(self,x,y,z): if z=='+': return x+y if z=='-': return x-y else: print('error') a=A() b=a.cal(3,4,'+') print(b) 运行结果: 2.延伸:创建一个类,类B继承A类

python实现创建一个银行类,这个类实现了两个方法,第一个方法可以将用户信息写入到文件中,第二个方法可以读取文件中的用户信息出来

class bank: def user_info(self): a=input('请输入用户信息:') # 不写encoding = 'utf-8'中文会乱码 with open('info.txt','w',encoding='utf-8') as f: f.write(a) def get_i

new方法、定制属性访问、描述符与装饰器知识点总结

第一部分:__new__方法 思考: a. 我们创建实例是通过什么方法创建的呢? b. 类每次实例化的时候都会创建一个新的对象,如果要求类只能被实例化一次该怎么做呢? 通过单利模式实现 c.什么是单例模式(Singleton Pattern ) 1、确保一个类只有一个实例,而且自行实例化并向整个系统

继承、多继承、魔术方法知识点总结

一、继承:简化代码避免重复 继承的意思相当于把父类中可以使用的方法写在自己类中一个性质 例1:创建一个人类,分男人类与女人类 属性:姓名、年龄 方法:吃、走 》公共特征 男:方法==》上班 女:方法==》洗衣服 class People: # 父类,可以理解为一个较为抽象的类,具体细分由下面的子类完

【23种设计模式】原型模式(五)

## 前言 在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,如果我们用new操作符去创建这样的类实例,这就会增加创建类的复杂度和创建过程与客户代码复杂的耦合度。如果采用工厂模式来创建这样的实例对象的话,随着产品类的不断增加,导致子类的数量不断增多,也导致了相

【23种设计模式】单例模式(一)

## 前言: 单例模式是创建型模式5种中的第1种,**关注对象的创建, 保证一个类仅有一个实例,并且提供一个全局访问点**。在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。如何绕过常规的构造器,提供一种机制来保证一个类只创建一个实例

设计模式学习(二):单例模式

设计模式学习(二):单例模式 作者:Grey 原文地址: 博客园:设计模式学习(二):单例模式 CSDN:设计模式学习(二):单例模式 单例模式 单例模式是创建型模式。 单例的定义:“一个类只允许创建唯一一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫作单例设计模式,简称单例模式。”定

Java GenericObjectPool 对象池化技术--SpringBoot sftp 连接池工具类

SpringBoot sftp 连接池工具类 使用`GenericObjectPool`只需要创建一个对象工厂类,继承`BasePooledObjectFactory`并重写它的`create()`和`destroyObject()`。Apache Commons Pool是一个对象池的框架,他提供了一整套用于实现对象池化的API。它提供了三种对象池:GenericKeyedObjectPool,

Java Executors类的9种创建线程池的方法及应用场景分析

在Java中,Executors 类提供了多种静态工厂方法来创建不同类型的线程池。在学习线程池的过程中,一定避不开Executors类,掌握这个类的使用、原理、使用场景,对于实际项目开发时,运用自如,以下是一些常用的方法,V哥来一一细说: newCachedThreadPool(): 创建一个可缓存

Java基础:线程的三种创建方式

一、继承Thread类 定义一个类继承线程类Thread 重写run()方法 创建线程对象 调用线程对象的start()方法创建线程 Thread类的常用API setName(String name):给线程取名字 getName():获取线程的名字 public static Thread cu