Py学习  »  Python

python 3.6 ntp服务器查询功能转换

Hosep • 4 年前 • 260 次点击  

如何将python 2.7转换为python 3.6.5? 在这里,我试图查询一组NTP时间服务器,并确定哪个是异常值。

这可能是一些简单的改变,但我不确定。

from contextlib import closing
from socket import socket, AF_INET, SOCK_DGRAM
import sys
import struct
import time

NTP_PACKET_FORMAT = "!12I"
NTP_DELTA = 2208988800L # 1970-01-01 00:00:00
NTP_QUERY = b'\x1b' + 47 * '\0'  

def ntp_time(host="pool.ntp.org", port=123):
    with closing(socket( AF_INET, SOCK_DGRAM)) as s:
        s.sendto(NTP_QUERY, (host, port))
        msg, address = s.recvfrom(1024)
    unpacked = struct.unpack(NTP_PACKET_FORMAT,
            msg[0:struct.calcsize(NTP_PACKET_FORMAT)])
    return unpacked[10] + float(unpacked[11]) / 2**32 - NTP_DELTA

if __name__ == "__main__":
    print time.ctime(ntp_time()).replace("  "," ")
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38602
 
260 次点击  
文章 [ 2 ]  |  最新文章 4 年前