python在windows和linux下獲得本機本地ip地址方法小結
本文實例總結了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程序設計有所幫助。
相關文章
python中創(chuàng)建一個包并引用使用的操作方法
python包在開發(fā)中十分常見,一般通過導入包含特定功能的python模塊包進行使用。當然,也可以自己創(chuàng)建打包模塊,然后發(fā)布,安裝使用,這篇文章主要介紹了python中如何創(chuàng)建一個包并引用使用,需要的朋友可以參考下2022-08-08