首页 > 编程语言 >实验7 面向对象编程与内置模块

实验7 面向对象编程与内置模块

时间:2023-06-13 23:45:21浏览次数:33  
标签:__ 内置 面向对象编程 self amount 模块 ._ print balance

task1

源代码

''' 银行账户
数据:持卡人姓名、账号、当前余额
操作:取款、存款、打印账户信息、返回账户余额
'''

class Account:
    '''一个模拟银行账户的简单类'''

    def __init__(self, name, account_number, initial_amount = 10):
        '''构造新账户'''
        self._name = name
        self._card_no = account_number
        self._balance = initial_amount


    def deposit(self, amount):
        '''存款'''
        self._balance += amount

    def withdraw(self, amount):
        '''取款'''
        if self._balance < amount:
            print('余额不足')
            return

        self._balance -= amount

    def info(self):
        '''打印账户信息'''
        print('持卡人姓名:', self._name)
        print('持卡人账号:', self._card_no)
        print('持卡人账户余额:', self._balance)

    def get_balance(self):
        '''返回账户余额'''
        return self._balance

def main():
    '''创建Account类对象,测试类'''
    print('测试账户1:'.center(30, '*'))
    a1 = Account('Bob', '5002311', 20000)
    a1.deposit(5000)
    a1.withdraw(4000)
    a1.info()

    print()

    print('测试账户2:'.center(30, '*'))
    a2 = Account('Joe', '5006692', 20000)
    a2.withdraw(10000)
    a2.withdraw(5000)
    a2.info()


if __name__ == '__main__':
    main()

测试结果

1.

1.面向对象中类、对象、属性、方法、实例化的概念:   类:具有相同特征事物的统称   对象:由类创建出来的具体存在。   属性:类的特征. __init__(self)一般用来定义属性   方法:类的行为动作‘   实例化:创建对象. 2. 你对类的封装性的理解:   封装是指保护类的成员不被随意访问的能力,通过把类的实现细节设置为private,能够完成类的封装。   task2 源代码
from shape import Rect, Circle

shape_lst =[Rect(5,5,10,5), Circle(), Circle(1,1,10)]

for i in shape_lst:
    i.info()
    print(f'面积: {i.area(): .2f}')
    print(f'周长: {i.perimeter(): .2f}')
    print()

 

测试结果

 

1. 你对类的继承、多态特性的理解:

继承:在继承关系中,已有的,设计好的类称为父类或基类,新设计的类称为子类或派生类。派生类可以继承父类的公有成员,但是不能继承其私有成员。

多态特性:定义时的类型和运行时的类型不一样,此时就成为多态。

2. 你对python中模块的理解:什么是模块:  以扩展名py结尾的python源代码文件,好比工具包。   task3 源代码
import math

def func(x):
    m=0
    s=2
    y = 1/((2*math.pi)**0.5)/s * math.exp(-1/2*(((x-m)/s)**2))
    print(f'x = {x}, f = {y:.8f}')

func(1)
func(3)
func(5)
func(7)
func(9)

测试结果

 

 

 

 

标签:__,内置,面向对象编程,self,amount,模块,._,print,balance
From: https://www.cnblogs.com/tyy2004/p/17479008.html

相关文章

  • 面向对象编程和内置模块
    task11classAccount:23def__init__(self,name,account_number,initial_amount=10):4self._name=name5self._card_no=account_number6self._blance=initial_amount78defdeposit(self,amount):9......
  • 实验7 面向对象编程与内置模块
    实验任务1task1.py1classAccount:23def__init__(self,name,account_number,initial_amount=10):4self._name=name5self._card_no=account_number6self._balance=initial_amount7defdeposit(self,amount):......
  • 实验7 面向对象编程与内置模块
    task1源代码:classAccount:def__init__(self,name,account_number,initial_amount=10):self._name=nameself._card_no=account_numberself._balance=initial_amountdefdeposit(self,amount):self._balance+=amount......
  • 实验7 面向对象编程与内置模块
    task1'''银行账户数据:持卡人姓名、账号、当前余额操作:取款、存款、打印账户信息、返回账户余额'''classAccount:'''一个模拟银行账户的简单类'''def__init__(self,name,account_number,initial_amount=10):'''构造新......
  • 模块(os、json、pickle)
    os模块主要与操作系统打交道,是与操作系统交互的一个窗口1.os.mkdir('dirname')创建单级目录dirname2.os.makedirs('dirname1/dirname2')生成多层递归目录dirnmae1下的dirname23.os.rmdir('dirname')删除空白单级目录dirname,若dirname不为空则无法删除,并报错 ......
  • linux reset模块
    前言大家都知道,复杂IC内部有很多具有独立功能的硬件模块,例如CPUcores、GPUcores、USB控制器、MMC控制器、等等,出于功耗、稳定性等方面的考虑,有些IC在内部为这些硬件模块设计了复位信号(resetsignals),软件可通过寄存器(一般1个bit控制1个硬件)控制这些硬件模块的复位状态。Linuxk......
  • 实验七 面向对象编程与内置模块
    实验任务1task1.pyclassAccount:def__init__(self,name,account_number,initial_amount=10):self._name=nameself._card_no=account_numberself._balance=initial_amountdefdeposit(self,amount):self._balance+=amoun......
  • Python基础之subprocess模块、hashlib模块、日志模块
    subprocess模块tasklist:列举出来文件进程命令"""1.以后我们可以用自己的电脑连接上别人的电脑(socket)2.通过subprocess可以在别人的计算机上执行我们想要执行的命令3.把在别人计算机上执行的结果给返回过来"""importsubprocessimportsubprocessres=subprocess.P......
  • python 之logging 模块
    一、日志的简单使用1、什么是日志记录你的代码在执行过程中的一些变化(记录的是一些有意义的变化)2、日志的5个等级importlogginglogging.debug('debugmessage')#10logging.info('infomessage')#20logging.warning('warningmessage')#30logging.error('errorm......
  • RDIFramework.NET V3.3 Web版角色授权管理新增角色对操作权限项、模块起止生效日期的
    在实际应用在我们可能会有这样的需求,某个操作权限项(按钮)或菜单在某个时间范围内可以让指定角色访问。此时通过我们的角色权限扩展设置就可以办到。在我们框架V3.3Web版本全新增加了角色权限扩展设置的功能。主要是针对角色对操作权限项、角色对模块在指定时间范围内有效的设置。功......