Python 利用POSIX时间计算距离

Python 利用POSIX时间计算距离,python,Python,我正在尝试构建恶意ATM活动检测 我有一个函数,它有4个参数(旧纬度、旧经度、新纬度、新经度),它返回两点之间的距离,我有两个时间戳,一个是最新的时间戳,另一个是刚刚发生的时间戳。我试图检测是否有可能访问ATM机。 所以我想把距离(km)除以飞行速度(km),然后比较时间,如果结果与时间不同,那么它是长的。 我应该如何用python编写代码 我写了一个密码 time_diff=new_time_stamp-old_time_stamp, time_speed=(time_diff

我正在尝试构建恶意ATM活动检测 我有一个函数,它有4个参数(旧纬度、旧经度、新纬度、新经度),它返回两点之间的距离,我有两个时间戳,一个是最新的时间戳,另一个是刚刚发生的时间戳。我试图检测是否有可能访问ATM机。 所以我想把距离(km)除以飞行速度(km),然后比较时间,如果结果与时间不同,那么它是长的。 我应该如何用python编写代码

我写了一个密码

    time_diff=new_time_stamp-old_time_stamp,
    time_speed=(time_diff/3600)*1000
    if distance <= time_speed:
       print "no malicious activity"
    else:
       print "malicious activity detected"
time\u diff=new\u time\u stamp-old\u time\u stamp,
时间速度=(时间差/3600)*1000

如果距离,首先也将其读取为光速,但很明显,这只是检查同一张卡是否在相距如此之远的不同位置使用,以致于在干预时间内飞行无法到达。您已经有了基本正确的代码

flight_speed = 1000   #km/h assumed
time_diff = 4000      #assumption seconds
secs_per_hour = 60*60
possible_distance_travelled = time_diff / secs_per_hour * flight_speed   # in km
if distance_between_ATMs < possible_distance_travelled:
print "no malicious activity"
    else:
print "malicious activity detected"
假定飞行速度为1000公里/小时
时间差=4000秒
秒每小时=60*60
可能行驶的距离=每小时的时间差/秒*飞行速度(公里)
如果自动取款机之间的距离小于可能行驶的距离:
打印“无恶意活动”
其他:
打印“检测到恶意活动”

不确定这里是否应该回答简单的家庭作业问题

您如何确保两台自动取款机的时间足够准确以进行比较?ATM_1可能会告诉您当前时间是2:34.12345,但ATM_2可能会告诉您当前时间是2:34.12350。保持多台机器的同步在某种程度上解决了问题,但这不是你需要做的准确度。这是一个学校项目,与商业无关。问题是,他们正在试图建立恶意ATM活动检测。你可能想从未来导入部门
,或者将
3600
更改为
3600.0
。我猜我也误解了这个问题。上面写的是飞行速度,但我读的是光速。