我有一个问题,我需要找到四边形的周长,只知道点的坐标。键入时,我有"# LB3: 5 # RB5: 5 # LT1: 1 # RT2: 6"
。我使用regex和drop数字
要计算四边形的周长,首先我需要找到dist
。从列表a
中,我表示 x1, y1, x2, y2
dist = sqrt ((x2 - x1) ** 2 + (y2 - y1) ** 2)
我的代码:
def perimetr(data):
a = []
result = re.findall(r'\d',data)
for i in result:
a.append(i)
#dist = sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)
return a
检索数据
您只需要提取真实的数据,而不是固定在单词上的数据,我建议使用单词边界
\b
,因此正则表达式\b\d+\b
re.findall
已返回一个列表您有一个
str
列表,需要整数:map(int, re.findall(r'\b\d+\b', data))
坐标定义
列表索引
拆包
Math关于周长
周长是边的长度,公式是这样的
你的公式
sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)
是关于勾股曲线和假肢长度的,所以在你的例子中是对角线长度解决方案
相关问题 更多 >
编程相关推荐