python的类class定义及其初始化方式

 更新时间:2023年05月31日 14:22:25   作者:嗨皮lemon  
这篇文章主要介绍了python的类class定义及其初始化方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

python类class定义及其初始化

定义类,功能,属性

一般类名首字母大写

class Calculator:
#名字和价格是属性
    name="jisuanqi" 
    price=28
    #定义的四个函数是功能
    def add(self,x,y):
        print(self.name)#这里指的是函数的属性-名字
        result=x+y
        print(result)
    def subtract(self,x,y):
        print(x-y)
    def multiply(self,x,y):
        print(x*y)
    def divide(self,x,y):
        print(x/y)
calc=Calculator()
print(calc.name)#jisuanqi
print(calc.price)#28
print(calc.add(1,2))#3
print(calc.subtract(10,2))#8

输出:

jisuanqi
28
jisuanqi
3
None
8
None

类的初始_init_

class Calculator:
    name="jisuanqi" #这是固有属性
    price=28
    #初始化,里面的参数可以自己定义
    def __init__(self,name,price,hight,width,weight):
        self.name=name
        self.price=price
        self.h=hight
        self.w=width
        self.weight=weight
    def add(self,x,y):
        print(self.name)
        result=x+y
        print(result)
    def subtract(self,x,y):
        print(x-y)
    def multiply(self,x,y):
        print(x*y)
    def divide(self,x,y):
        print(x/y)
#这里必须传入参数才可以
calc=Calculator('good calc',280,30,30,100)
print(calc.name)#jisuanqi
print(calc.weight)#100
print(calc.price)#280

输出结果:

good calc
100
280

Python定义类时,class,class()和class(object)的区别

  • 1.使用 Python 时, 遇到 class A 和 class A(object) 的写法,在 Py2 中是有概念上和功能上的区别的, 分别称为经典类(旧式类)old-style(classic-style) 与新式类的区别new-style。
  • 2.历史原因:.2.2以前的时候type和object还不统一. 在2.2统一到3之间, 要用class Foo(object)来申明新式类, 因为它的type是 < type ‘type’ > .不然的话, 生成的类的type就是 < type ‘classobj’ >
  • 3.为什么要继承object类?主要目的是便于统一操作。在python 3.X中已经默认继承object类

所以,继承object类是为了让自己定义的类拥有更多的属性,以便使用。当然如果用不到,不继承object类也可以。

python2中继承object类是为了和python3保持一致,python3中自动继承了object类。

python2中需要写为如下形式才可以继承object类。

def class(object):

python2中写为如下两种形式都是不能继承object类的,也就是说是等价的。

def class:
def class():

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 关于pycharm中pip版本10.0无法使用的解决办法

    关于pycharm中pip版本10.0无法使用的解决办法

    近期在利用 pycharm 安装第三方库时会提示 pip 不是最新版本, 因此对 pip 进行更新,但是生成最新版本之后, pip 中由于缺少 main 函数,导致在 pycharm 中无法自动安装第三方库。本文就介绍一下如何解决
    2019-10-10
  • Flask使用SQLAlchemy实现持久化数据

    Flask使用SQLAlchemy实现持久化数据

    本文主要介绍了Flask使用SQLAlchemy实现持久化数据,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2021-07-07
  • python 装饰器功能与用法案例详解

    python 装饰器功能与用法案例详解

    这篇文章主要介绍了python 装饰器功能与用法,结合具体实例形式详细分析了python 装饰器的基本原理、功能、用法及操作注意事项
    2020-03-03
  • python 画条形图(柱状图)实例

    python 画条形图(柱状图)实例

    这篇文章主要介绍了python 画条形图(柱状图)实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python占位符输入方式实例

    python占位符输入方式实例

    在本篇文章中小编给大家分享了关于python占位符怎么输入的相关知识点内容,有兴趣的朋友们可以学习下。
    2019-05-05
  • 深入理解Django的信号机制

    深入理解Django的信号机制

    本文主要介绍了深入理解Django的信号机制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • python实现密度聚类(模板代码+sklearn代码)

    python实现密度聚类(模板代码+sklearn代码)

    这篇文章主要介绍了python实现密度聚类(模板代码+sklearn代码),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python 可视化神器Plotly详解

    Python 可视化神器Plotly详解

    这篇文章主要介绍了Python 可视化神器Plotly详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Python selenium如何打包静态网页并下载

    Python selenium如何打包静态网页并下载

    这篇文章主要介绍了Python selenium如何打包静态网页并下载,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • Python构建机器学习API服务的操作过程

    Python构建机器学习API服务的操作过程

    这篇文章主要介绍了Python构建机器学习API服务的操作过程,通过本文的指导,读者可以学习如何使用Python构建机器学习模型的API服务,并了解到在实际应用中需要考虑的一些关键问题和解决方案,从而为自己的项目提供更好的支持和服务,需要的朋友可以参考下
    2024-04-04

最新评论