python关于类和正则表达( 编写一个程序(类))
1、什么是类对象,实例对象
类对象:类名
实例对象:类创建的对象
2、类属性:
就是类对象所拥有的属性,它被所有类对象的实例对象所共有,在内存中只存在一个副本。对于公有的类属性,在类外可以通过类对象和实例对象访问
3、 类的结构
(1) 术语 —— 实例
1. 使用面相对象开发,第 1 步 是设计 类
2. 使用 类名() 创建对象,创建对象 的动作有两步:
3. 在内存中为对象 分配空间
2. 调用初始化方法 `__init__` 为 对象初始化
3. 对象创建后,内存 中就有了一个对象的 实实在在 的存在 —— 实例
因此,通常也会把:
1. 创建出来的 对象 叫做 类 的 实例
2. 创建对象的 动作 叫做 实例化
3. 对象的属性 叫做 实例属性
4. 对象调用的方法 叫做 实例方法
4 、类方法
通过 类名. 的方式可以 访问类的属性 或者 调用类的方法
5、插入代码如下:
class vector3:
def __init__(self, x_ = 0, y_ = 0, z_ = 0):
self.x = x_
self.y = y_
self.z = z_
def __add__(self, obj):
return vector3(self.x+obj.x, self.y+obj.y, self.z+obj.z)
def __sub__(self, obj):
return vector3(self.x-obj.x, self.y-obj.y, self.z-obj.z)
def __mul__(self, obj):
return vector3(self.x*obj.x, self.y*obj.y, self.z*obj.z)
def __pow__(self, obj):
return vector3(self.y*obj.z-obj.y*self.z, self.z*obj.x-self.x*obj.z, self.x*obj.y-obj.x*self.y)
def __str__(self):
return str(self.x)+','+str(self.y)+','+str(self.z)
v1 = vector3(1, 2, 3)
v2 = vector3(0, 1, 2)
print (v1 + v2)
print (v1 - v2)
print (v1 * v2)
print (v1 ** v2)
6、运行结果如下:

python关于类和正则表达( 编写一个程序(类))的更多相关文章
- Python之面向对象和正则表达(代数运算和自动更正)
面向对象 一.概念解释 面对对象编程(OOP:object oriented programming):是一种程序设计范型,同时也是一种程序开发的方法,实现OOP的程序希望能够在程序中包含各种独立而又 ...
- 2014金山笔试_编写一个数组类 MyVector
//编写一个数组类 MyVector,数组内容可以动态扩充,实现构造,析构,赋值操作符重载,插入,删除,获取元素个数,获取数组容量(不可以使用STL等的容器类,不能使用 //不连续的存储空间) #in ...
- python——re模块(正则表达)
python——re模块(正则表达) 两个比较不错的正则帖子: http://blog.csdn.net/riba2534/article/details/54288552 http://blog.c ...
- 22.编写一个类A,该类创建的对象可以调用方法showA输出小写的英文字母表。然后再编写一个A类的子类B,子类B创建的对象不仅可以调用方法showA输出小写的英文字母表,而且可以调用子类新增的方法showB输出大写的英文字母表。最后编写主类C,在主类的main方法 中测试类A与类B。
22.编写一个类A,该类创建的对象可以调用方法showA输出小写的英文字母表.然后再编写一个A类的子类B,子类B创建的对象不仅可以调用方法showA输出小写的英文字母表,而且可以调用子类新增的方法sh ...
- java基础—继承题目:编写一个Animal类,具有属性:种类;具有功能:吃、睡。定义其子类Fish
编写一个Animal类,具有属性:种类:具有功能:吃.睡.定义其子类Fish package zhongqiuzuoye; public class Animal { //属性 private Str ...
- 简单练习题2编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次, 编写一个主类,在主类中测试Account类的功能
编写Java应用程序.首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”.“取款”和“余额查询”.其次, 编写一个主类,在主类中测试Account类的 ...
- python练习:编写一个程序,要求用户输入10个整数,然后输出其中最大的奇数,如果用户没有输入奇数,则输出一个消息进行说明。
python练习:编写一个程序,要求用户输入10个整数,然后输出其中最大的奇数,如果用户没有输入奇数,则输出一个消息进行说明. 重难点:通过input函数输入的行消息为字符串格式,必须转换为整型,否则 ...
- python练习:编写一个程序,检查3个变量x,y,z,输出其中最大的奇数。如果其中没有奇数,就输出一个消息进行说明。
python练习:编写一个程序,检查3个变量x,y,z,输出其中最大的奇数.如果其中没有奇数,就输出一个消息进行说明. 笔者是只使用条件语句实行的.(if-else) 重难点:先把三个数进行由小到大的 ...
- python练习:编写一个程序,要求用户输入一个整数,然后输出两个整数root和pwr,满足0<pwr<6,并且root**pwr等于用户输入的整数。如果不存在这样一对整数,则输入一条消息进行说明。
python练习:编写一个程序,要求用户输入一个整数,然后输出两个整数root和pwr,满足0<pwr<6,并且root**pwr等于用户输入的整数.如果不存在这样一对整数,则输入一条消息 ...
随机推荐
- viewport的故事(一)
部分翻译 自原文 https://www.quirksmode.org/mobile/viewports.html 概念:设备像素和CSS像素 设备像素可以通过 screen.width/he ...
- 最近发现一个php trim的bug
用trim 排除字符串两边的 “.”:你会发现“耀.”会出现编码错误问题,导致程序出现错误!代码如下: $a = "王者荣耀."; echo trim($a,".&quo ...
- 消除 ASP.NET Core 告警 "No XML encryptor configured. Key may be persisted to storage in unencrypted form"
在 ASP.NET Core 中如果在 DataProtection 中使用了 PersistKeysToFileSystem 或 PersistKeysToFileSystem services.A ...
- Sublime Text 3 使用心得
1.Ctrl + Shift + P : package control install package == > ConvertToUTF82.列模式: 苹果:OS X -鼠标左键+Optio ...
- 工作流JBPM
jbpm3 共分为12种节点 1.node节点:如果该节点没有定义ACTION,则流转到该节点时不会停留,会继续往下走,如果定义ACTION,执行完ACTION后会停在该节点上,调用 token.si ...
- 关于Android布局优化的代码使用
1. include标签: include标签的作用是在一个布局文件中导入另一个布局文件.在开发中经常会有多个页面同时拥有一部分相同的布局,这个时候如果每个布局都把那个部分的代码写一遍就会使得代码重 ...
- Timestamp “时间戳” - 术语
A timestamp is a sequence of characters or encoded information identifying when a certain event occu ...
- -webkit-box-orient: vertical; 在webpack上失效
-webkit-box-orient: vertical;在webpack上失效,可以使用以下方式解决 .ifc-header-content-comment { text-overflow: ell ...
- coreseek/sphinx中的匹配模式
所谓匹配模式就是用户怎样依据keyword在索引库中查找相关的记录. SPH_MATCH_ALL, 匹配全部查询分词(默认模式); 如"手机配件".不匹配 "我有一部手机 ...
- vi命令保存
:q :退出编辑器 :q! :强制退出 :wq :保存并退出 :wq! :保存并强制退出 ZZ :保存并退出 :x :保存并退出