Python求两点之间的直线距离(2种实现方法)

yipeiwu_com5年前Python基础

方法一:

#导入math包
import math
#定义点的函数
class Point:
  def __init__(self,x=0,y=0):
    self.x=x
    self.y=y
  def getx(self):
    return self.x
  def gety(self):
    return self.y 
#定义直线函数  
class Getlen:
  def __init__(self,p1,p2):
    self.x=p1.getx()-p2.getx()
    self.y=p1.gety()-p2.gety()
    #用math.sqrt()求平方根
    self.len= math.sqrt((self.x**2)+(self.y**2))
  #定义得到直线长度的函数
  def getlen(self):
    return self.len
 
#设置点p1的坐标为(0,0)    
p1=Point(0,0)
#设置点p2的坐标为(3,4)
p2=Point(3,4)
#定义对象
l=Getlen(p1,p2)
#获取两点之间直线的长度
d=l.getlen())

方法二:

import numpy as np
import math
p1=np.array([0,0])
p2=np.array([1000,2000])
p3=p2-p1
p4=math.hypot(p3[0],p3[1])
print(p4)

以上这篇Python求两点之间的直线距离(2种实现方法)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python操作MongoDB数据库PyMongo库使用方法

引用PyMongo 复制代码 代码如下: >>> import pymongo 创建连接Connection 复制代码 代码如下: >>> impo...

python使用xlrd与xlwt对excel的读写和格式设定

前言 python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。本文主要介绍了python使用xlrd与xlwt对excel的读...

pandas.DataFrame的pivot()和unstack()实现行转列

pandas.DataFrame的pivot()和unstack()实现行转列

示例:有如下表需要进行行转列: 代码如下: # -*- coding:utf-8 -*- import pandas as pd import MySQLdb from wa...

Python实现将数据框数据写入mongodb及mysql数据库的方法

本文实例讲述了Python实现将数据框数据写入mongodb及mysql数据库的方法。分享给大家供大家参考,具体如下: 主要内容: 1、数据框数据写入mongdb方法 2、数据框数据写入...

pygame游戏之旅 添加游戏暂停功能

pygame游戏之旅 添加游戏暂停功能

本文为大家分享了pygame游戏之旅的第13篇,供大家参考,具体内容如下 定义暂停函数: def paused(): largeText = pygame.font.SysFont...