python之利用魔术方法实现自己定义的二维向量
时间:2022-07-23
本文章向大家介绍python之利用魔术方法实现自己定义的二维向量,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
from math import hypot
class Vector:
def __init__(self,x,y):
self.x = x
self.y = y
#将一个对象以字符串的形式表示,对比java的tostring方法
def __repr__(self):
return "Vector(%r,%r)" % (self.x,self.y)
#用于计算向量的模
def __abs__(self):
return hypot(self.x,self.y)
#用于判断向量是否为0向量
def __bool__(self):
return bool(abs(self))
#向量之间的相加
def __add__(self, other):
x = self.x + other.x
y = self.y + other.y
return Vector(x,y)
#向量的标量乘法
def __mul__(self, other):
return Vector(self.x * other, self.y * other)
v1 = Vector(1,2)
v2 = Vector(3,4)
print(abs(v1))
print(v1+v2)
print(v1*3)
v3 = Vector(0,0)
print(bool(v3))
输出:
- 【Go 语言社区】HTML5 canvas验证码识别
- 迁移式升级的测试(二)(r10笔记第35天)
- Golang实现图片缩放服务器
- mongodb数据结构与基本操作增删改查整理(二)
- 使用在线重定义重构亿级分区表(r10笔记第34天)
- 【Go 语言社区】一个WebSocket的简单Echo例子
- Java基础-day10-代码题-继承&抽象类
- 闪回区空间不足引发的SQL问题分析(r10笔记第32天)
- JavaScript Window - 浏览器对象模型
- 纯CSS实现的圆角折叠菜单特效代码
- MySQL和Oracle中的半连接测试总结(一)(r10笔记第31天)
- 【Go 语言社区】关于select和channel数组的配合使用--转
- Java基础-day09-代码题-对象;类;封装
- MySQL replace into的使用细则(r10笔记第48天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 每日一题:最大堆的实现
- 每日一题:什么是子网掩码
- ConstraintLayout优势在哪
- 聊聊claudb的MasterReplication
- R语言中的Theil-Sen回归分析
- R语言关于回归系数的解释
- R语言对二分连续变量进行逻辑回归数据分析
- SAS中用单因素ANOVA研究不同疗法对焦虑症的有效性
- R语言逻辑回归预测分析付费用户
- R语言中使用多重聚合预测算法(MAPA)进行时间序列分析
- R语言中的岭回归、套索回归、主成分回归:线性模型选择和正则化
- R语言基于树的方法:决策树,随机森林,套袋Bagging,增强树
- R语言无监督学习:PCA主成分分析可视化
- 如何用r语言制作交互可视化报告图表
- R语言大数据分析纽约市的311万条投诉统计可视化与时间序列分析