python demo之print格式化输出

本文介绍使用Python进行网络编程的几个实用技巧,包括IP地址的打包与解包、查询端口号对应的服务名称及时间戳到字符串的转换方法。
#!/usr/bin/env python
# Python Network Programming Cookbook -- Chapter - 1
# This program requires Python 2.7 or any later version

import socket
from binascii import hexlify


def convert_ip4_address():
    for ip_addr in ['127.0.0.1', '192.168.0.1',"192.168.4.1"]:
        packed_ip_addr = socket.inet_aton(ip_addr)
        unpacked_ip_addr = socket.inet_ntoa(packed_ip_addr);
        print ("IP Address: %s => Packed: %s, Unpacked: %s" % (ip_addr, hexlify(packed_ip_addr), unpacked_ip_addr))
    
if __name__ == '__main__':
    convert_ip4_address()

获取默认端口号对应的服务

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

import socket

#获取默认端口对应的服务!
def find_service_name():
    protocolname = 'tcp'
    #for port in [80, 25,21,443,8080]:
    for port in range(1,11320+1):#端口号范围0-65535
        try:
            print "Port: %s => service name: %s" % (port, socket.getservbyport(port, protocolname))
        except socket.error:
            err="";

    print "Port udp: %s => service name: %s" %(53, socket.getservbyport(53, 'udp'))
    
if __name__ == '__main__':
    find_service_name()

时间戳转换为字符串

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

import ntplib
import  time
import  datetime

#window C:\Python27\Scripts\pip.exe install ntplib
#pip install ntplib
def print_time():
    ntp_client = ntplib.NTPClient()
    response = ntp_client.request('pool.ntp.org')
    str=time.ctime(response.tx_time)
    print  str;
    #时间戳转换为字符串
    newtime=time.localtime(response.tx_time);
    line=time.strftime("%Y-%m-%d %H:%M:%S",newtime)
    print line

if __name__ == '__main__':
    print_time()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值