python在windows和linux下获得本机本地ip地址方法 python在windows和linux下获得本机本地ip地址方法小结

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

python在windows和linux下获得本机本地ip地址方法 python在windows和linux下获得本机本地ip地址方法小结

niuniu   2021-03-21 我要评论
想了解python在windows和linux下获得本机本地ip地址方法小结的相关内容吗,niuniu在本文为您仔细讲解python在windows和linux下获得本机本地ip地址方法的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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程序设计有所帮助。

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们