首页 > 编程语言 >python: create object

python: create object

时间:2024-10-12 22:43:18浏览次数:7  
标签:return python create object ._ owner balnace self def

 

class Account(object):
    """
    账户
    """
    owner:str  #类型提示
    """
    类型提示
    """
    balnace:float #类型提示
    """
    类型提示
    """
    
    def __init__(self, owner:any, balance:any):
        self.owner = owner
        self.balnace = balance
    
    def __repr__(self):
        """
        
        :return: 
        """
        return f'Acount({self.owner!r},{self.balnace!r})'
    
    def deposit(self,amount):
        """
        
        :param amount: 
        :return: 
        """
        self.balnace += amount
    
    def withdraw(self,amount):
        """
        
        :param amount: 
        :return: 
        """
        self.balnace -= amount
        
    def inquiry(self):
        """
        
        :return: 
        """
        return self.balnace
    
    
#test
b=Account("Du",10.0)
print(b.inquiry())
b.deposit(50)
print(b.inquiry())
b.withdraw(10)
print(b.inquiry())
print(b)

output:
10.0
60.0
50.0
Acount('Du',50.0)

  

2.

class Account(object):
    """
    账户
    """
    owner: str  # 类型提示
    """
    类型提示
    """
    balnace: float  # 类型提示
    """
    类型提示
    """

    def __init__(self):
        self._owner:str = any
        self._balnace:float = any

    def __repr__(self):
        """

        :return:
        """
        return f'Acount({self._owner!r},{self._balnace!r})'

    @property
    def owner(self):
        """

        :return:
        """
        return self._owner

    @owner.setter
    def owner(self,owner):
        """

        :param owner:
        :return:
        """
        if not isinstance(owner,str):
            raise TypeError('Exepcted str')
        if len(owner)>10:
            raise ValueError('Must be 10 Characters or less')
        self._owner=owner
    @property
    def balnace(self):
        """

        :return:
        """
        return self._balnace

    @balnace.setter
    def balnace(self,balnace):
        """

        :param balnace:
        :return:
        """

        self._balnace=balnace
    @property
    def deposit(self):
        """

        :return:
        """
        return self._balnace

    @deposit.setter
    def deposit(self, amount):
        """

        :param amount:
        :return:
        """
        self._balnace += amount

    @property
    def withdraw(self):
        """

        :return:
        """
        return self._balnace

    @withdraw.setter
    def withdraw(self, amount):
        """

        :param amount:
        :return:
        """
        self._balnace -= amount

    @property
    def inquiry(self):
        """

        :return:
        """
        return self._balnace

    @owner.deleter
    def owner(self):
        """
        
        :return:
        """
        print('deleting')



    
    
#test
b=Account()
b.owner='eve'
b.balnace=10
print(b.inquiry)
b.deposit=50
print(b.inquiry)
b.withdraw=10
print(b.inquiry)
print(b)

  

标签:return,python,create,object,._,owner,balnace,self,def
From: https://www.cnblogs.com/geovindu/p/18461637

相关文章

  • Python用CNN - LSTM、ARIMA、Prophet股票价格预测的研究与分析|附数据代码
    全文链接: https://tecdat.cn/?p=37860原文出处:拓端数据部落公众号 分析师:SabrinaHuang股票市场的波动起伏一直备受投资者关注,准确预测股票价格对于投资者制定合理的投资策略至关重要。股票价格数据具有时间序列特性,近年来,随着机器学习和深度学习技术的发展,各种模型被应用于......
  • python数据结构学习第一章——栈
    在这片文章中,我们使用python3.8自制一个具有基本功能的栈结构,它的功能只有push,pop,peek这三个功能`#!/usr/bin/envpython#*coding:utf-8*#@Time:2024/9/1519:26#@Author:Huzhaojun#@Version:V1.0#@File:test.py#@desc:#数据结构复习第一章,栈结构的......
  • 数据结构与算法Python版p26-p28 无序表链表实现、有序表
    B站视频-数据结构与算法Python版无序表链表实现、有序表一、节点二、无序表三、有序表一、节点#节点classNode:def__init__(self,initdata):self.data=initdataself.next=NonedefgetData(self):returnself.data......
  • 以Python方式理解Mixin
    通过Python理解Mixin概念-腾讯云开发者社区-腾讯云(tencent.com)Mixin的概念Mixin即Mix-in,常被译为“混入”,是一种编程模式,在Python等面向对象语言中,通常它是实现了某种功能单元的类,用于被其他子类继承,将功能组合到子类中。利用Python的多重继承,子类可以继承不同功......
  • 第108天:免杀对抗-Python&混淆算法&反序列化&打包生成器&Py2exe&Nuitka
    知识点#知识点:1、Python-对执行代码做文章2、Python-对shellcode做文章3、Python-对代码打包器做文章#章节点:编译代码面-ShellCode-混淆编译代码面-编辑执行器-编写编译代码面-分离加载器-编写程序文件面-特征码定位-修改程序文件面-加壳花指令-资源代码加载面-Dll反......
  • 机器学习主成分分析算法 PCA—python详细代码解析(sklearn)
    一、问题背景在进行数据分析时,我们常常会遇到这样的情况:各个特征变量之间存在较多的信息重叠,也就是相关性比较强。就好比在研究一个班级学生的学习情况时,可能会收集到学生的语文成绩、数学成绩、英语成绩等多个特征变量。但往往会发现,语文成绩好的学生,数学和英语成绩也可能比......
  • Python字符串格式
    文章目录1.数字与ASCII码转换2.字符串输出格式(%)2.1数字进制与小数表示2.2字符串长度与对齐方式3.字符串输出格式(f'')4.字符串输出格式(format)5.转义字符(换行、Tab)6.字符串查找统计替换等1.数字与ASCII码转换将ASCII码转化为数字或者将数字转化为ASCII码时,......
  • 【零基础学Python】项目实战:使用Django框架搭建私人博客第(二)天 —— 注册、登录功能实
    一、前言通过上次的学习我们已经顺利的搭建了一个私人博客框架,接下来我们开始写页面。本章节代码打包上传,资源下载链接:注意:本系列文章旨在使小白在尽可能短的时间内利用Django搭建一个较为完整的项目,因此页面功能将会非常简单,美工==几乎没有,见谅。二、创建应用1.创建accou......
  • 21年计算机挑战赛Python组区域赛题目及个人解答(重置版)
    1.乌鸦喝水代码部分#计算机挑战赛--乌鸦喝水x=int(input('请输入底边的边长:\n'))y=int(input('请输入容器内水面距离瓶子口的距离:\n'))z=0while1:ifx*x*y-8*z<2*x*x:print(f'需要投放{z}个石子乌鸦才能喝到水')breakelse:......
  • Python 潮流周刊#72:Python 3.13.0 最终版已发布!(摘要)
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了14篇文章,12个开源项目,4则音视频,全文2300字。以下是本期摘要:......