本文实例总结了python在windows和linux下获得本机本地ip地址方法。分享给大家供大家参考。具体分析如下:
python的socket包含了丰富的函数和方法可以获得本机的ip地址信息,socket对象的gethostbyname方法可以根据主机名获得本机ip地址,socket对象的gethostbyname_ex方法可以获得本机所有ip地址列表
第一种方法:通过socket.gethostbyname方法获得
import socket
localIP = socket.gethostbyname(socket.gethostname())#得到本地ip
print "local ip:%s "%localIP
返回结果如下:
'172.16.34.102'
第二种方法:通过socket.gethostbyname_ex方法获得本机主机名和ip地址列表
import socket
ipList = socket.gethostbyname_ex(socket.gethostname())
print(ipList)
返回结果如下:
('china-43226208c', [], ['192.168.5.196'])
以上两种方法在linux下也可以使用,linux下还以通过下面的代码获取本机ip地址
import socket
import fcntl
import struct
def get_ip_address(ifname):
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
return socket.inet_ntoa(fcntl.ioctl(
s.fileno(),
0x8915, # SIOCGIFADDR
struct.pack('256s', ifname[:15])
)[20:24])
希望本文所述对大家的Python程序设计有所帮助。
Cpy和Python的效率对比
Python语言的初学者,特别是"惊奇者"(也就是那种第一眼就被毫无意义的某些特性吸引,之后持续说服自己的人)认为Python不需要C语言的for语句,因为他们能用
Python使用Flask框架同时上传多个文件的方法
本文实例讲述了Python使用Flask框架同时上传多个文件的方法,分享给大家供大家参考。具体如下:下面的演示代码带有详细的html页面和python代码importos#We
python中Flask框架简单入门实例
本文实例讲述了python中Flask框架的简单用法。分享给大家供大家参考。具体如下:使用Flask框架的简单入门范例代码,如果你正学习Flask框架,可以参考