python的类class定义及其初始化方式
作者:嗨皮lemon 时间:2023-08-07 11:52:15
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():
来源:https://blog.csdn.net/weixin_40490880/article/details/81710916
标签:python的类,class定义,初始化
0
投稿
猜你喜欢
PyTorch与PyTorch Geometric的安装过程
2021-12-15 05:00:08
Vue+ElementUI实现表单动态渲染、可视化配置的方法
2024-04-27 15:56:15
浅谈tensorflow中dataset.shuffle和dataset.batch dataset.repeat注意点
2023-12-10 09:54:31
python+pillow绘制矩阵盖尔圆简单实例
2022-07-04 02:44:39
推荐技术人员一款Python开源库(造数据神器)
2023-11-10 19:57:45
Javascript学习第一季 二
2008-06-24 18:20:00
python卸载后再次安装遇到的问题解决
2022-06-10 01:58:09
使用OpenCV实现人脸图像卡通化的示例代码
2023-01-03 13:38:49
超详细Python解释器新手安装教程
2021-08-14 07:10:01
基于javascript实现最简单的选项卡切换效果
2023-08-25 00:26:23
ASP对FoxPro自由表(DBF文件)的操作
2010-05-27 12:20:00
Oracle回滚段的概念,用法和规划及问题的解决
2010-07-26 13:08:00
Python实现类继承实例
2023-11-13 07:44:24
MAC系统IDEA颜值插件MaterialThemeUI
2022-12-26 00:29:07
NCCL深度学习Bootstrap网络连接建立源码解析
2022-02-25 22:28:10
Python 异常处理实例详解
2021-10-14 05:36:39
Oracle与MySQL删除字段时对索引和约束的处理
2008-12-26 16:41:00
浅谈Django中的QueryDict元素为数组的坑
2023-08-22 18:55:54
python判定文件目录是否存在及创建多层目录
2022-08-12 09:39:03
JAVASCRIPT实现的WEB页面跳转以及页面间传值方法
2023-08-23 04:56:09