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


Posted in Python onMarch 20, 2015

本文实例总结了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 相关文章推荐
Python中函数的用法实例教程
Sep 08 Python
安装python3的时候就是输入python3死活没有反应的解决方法
Jan 24 Python
Python中的TCP socket写法示例
May 11 Python
对pandas的层次索引与取值的新方法详解
Nov 06 Python
python 检查文件mime类型的方法
Dec 08 Python
PyQt5 加载图片和文本文件的实例
Jun 14 Python
Python标准库itertools的使用方法
Jan 17 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
Mar 31 Python
pandas DataFrame 数据选取,修改,切片的实现
Apr 24 Python
python同时遍历两个list用法说明
May 02 Python
Python tkinter制作单机五子棋游戏
Sep 14 Python
Python 远程开关机的方法
Nov 18 Python
python使用三角迭代计算圆周率PI的方法
Mar 20 #Python
Cpy和Python的效率对比
Mar 20 #Python
Python通过PIL获取图片主要颜色并和颜色库进行对比的方法
Mar 19 #Python
Python实现简单状态框架的方法
Mar 19 #Python
python中日期和时间格式化输出的方法小结
Mar 19 #Python
Python实现抓取城市的PM2.5浓度和排名
Mar 19 #Python
python在windows命令行下输出彩色文字的方法
Mar 19 #Python
You might like
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
Fleaphp常见函数功能与用法示例
2016/11/15 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
基于jQuery实现点击同时更改两个iframe的网址
2010/07/01 Javascript
javascript下利用arguments实现string.format函数
2010/08/24 Javascript
Javascript类库的顶层对象名用户体验分析
2010/10/24 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
页面刷新时记住滚动条的位置jquery代码
2014/06/17 Javascript
JavaScript中匿名、命名函数的性能测试
2014/09/04 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
Nodejs express框架一个工程中同时使用ejs模版和jade模版
2015/12/28 NodeJs
JavaScript实现DOM对象选择器
2016/09/24 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
2017/02/10 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
vue内置组件component--通过is属性动态渲染组件操作
2020/07/28 Javascript
使用Python进行稳定可靠的文件操作详解
2013/12/31 Python
python实现的守护进程(Daemon)用法实例
2015/06/02 Python
Python字符串拼接、截取及替换方法总结分析
2016/04/13 Python
浅谈python 线程池threadpool之实现
2017/11/17 Python
Python多进程原理与用法分析
2018/08/21 Python
Flask框架工厂函数用法实例分析
2019/05/25 Python
选择python进行数据分析的理由和优势
2019/06/25 Python
Python numpy多维数组实现原理详解
2020/03/10 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
tensorflow 动态获取 BatchSzie 的大小实例
2020/06/30 Python
浅谈CSS3 box-sizing 属性 有趣的盒模型
2019/04/02 HTML / CSS
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
一套软件开发工程师笔试题
2015/05/18 面试题
一道输出判断型Java面试题
2014/10/01 面试题
陈安之励志演讲稿
2014/08/21 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
基于Python实现流星雨效果的绘制
2022/03/18 Python
Golang 1.18 多模块Multi-Module工作区模式的新特性
2022/04/11 Golang