python距離測量的方法
之所以寫這個,其實就是希望能對距離有一些概念,當(dāng)然這個也是很基礎(chǔ)的,不過千里之行始于足下嘛,各種路徑算法,比如a*什么的都會用到這個
距離測量有三種方式
1、歐式距離,這個是最常用的距離測量方式
((x1-x2)^2 + (y1-y2)^2)^0.5
得到一個原型區(qū)域的距離
#設(shè)起始坐標(biāo)是原點,即(0,0)
y_result = []
for y in range(10,-10,-1):
x_result = []
for x in range(-10,10,1):
#((0-x)**2 + (0-y)**2)**0.5
if ((0-x)**2 + (0-y)**2)**0.5 <= 9:
x_result.append('*')
else:
x_result.append(' ')
y_result.append(''.join(x_result))
for i in y_result:
print i
2、街區(qū)距離,這個一般游戲中用到的會比較多,之所以叫街區(qū),是因為西方街道通常都是東南,東北,西南,西北這樣
|x1-x2| + |y1-y2|
得到一個菱形區(qū)域的距離
#設(shè)起始坐標(biāo)是原點,即(0,0)
y_result = []
for y in range(10,-10,-1):
x_result = []
for x in range(-10,10,1):
#(abs(0-x) + abs(0-y))
if (abs(0-x) + abs(0-y)) <= 9:
x_result.append('*')
else:
x_result.append(' ')
y_result.append(''.join(x_result))
for i in y_result:
print i
3、棋盤距離,這個就好理解,像棋盤一樣的方格子
max(|x1-x2|, |y1-y2|)
得到一個方形區(qū)域的距離
#設(shè)起始坐標(biāo)是原點,即(0,0)
y_result = []
for y in range(10,-10,-1):
x_result = []
for x in range(-10,10,1):
#max(abs(0-x),abs(0-y))
if max(abs(0-x),abs(0-y)) <= 9:
x_result.append('*')
else:
x_result.append(' ')
y_result.append(''.join(x_result))
for i in y_result:
print i
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
一文輕松掌握python語言命名規(guī)范規(guī)則
這篇文章主要介紹了一文輕松掌握python語言命名規(guī)范規(guī)則,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
python json.loads兼容單引號數(shù)據(jù)的方法
今天小編就為大家分享一篇python json.loads兼容單引號數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
Python中try用法、內(nèi)置異常類型與自定義異常類型拓展案例詳解
在?Python?里,try?語句主要用于異常處理,其作用是捕獲并處理代碼運行期間可能出現(xiàn)的異常,避免程序因異常而意外終止,這篇文章主要介紹了Python中try用法、內(nèi)置異常類型與自定義異常類型拓展,需要的朋友可以參考下2025-04-04
實現(xiàn)Python3數(shù)組旋轉(zhuǎn)的3種算法實例
在本篇文章里小編給大家整理的是一篇關(guān)于實現(xiàn)Python3數(shù)組旋轉(zhuǎn)的3種算法實例內(nèi)容,需要的朋友們可以學(xué)習(xí)參考下。2020-09-09
Pytorch的torch.utils.data中Dataset以及DataLoader示例詳解
torch.utils.data?是?PyTorch?提供的一個模塊,用于處理和加載數(shù)據(jù),該模塊提供了一系列工具類和函數(shù),用于創(chuàng)建、操作和批量加載數(shù)據(jù)集,這篇文章主要介紹了Pytorch的torch.utils.data中Dataset以及DataLoader等詳解,需要的朋友可以參考下2023-08-08

