Python简单获取网卡名称及其IP地址的方法【基于psutil模块】

yipeiwu_com7年前Python基础

本文实例讲述了Python简单获取网卡名称及其IP地址的方法。分享给大家供大家参考,具体如下:

windows上想知道网卡和IP地址,可以使用ipconfig命令,在linux上可以使用ifconfig命令,得到输出后,可以解析输出内容,我要介绍的方法更为简单,只需要安装一个名为psutil的第三方库即可

# -*- coding: utf-8 -*-
#! python2
import psutil
#获取网卡名称和其ip地址,不包括回环
def get_netcard():
 netcard_info = []
 info = psutil.net_if_addrs()
 for k,v in info.items():
 for item in v:
  if item[0] == 2 and not item[1]=='127.0.0.1':
  netcard_info.append((k,item[1]))
 return netcard_info
if __name__ == '__main__':
 print get_netcard()

本机测试运行结果:

[('\xb1\xbe\xb5\xd8\xc1\xac\xbd\xd3', '192.168.3.37')]

补充:这里使用了psutil模块,若提示Unresolved import: psutil,则需要使用如下命令进行安装:

pip install psutil

psutil模块功能十分强大,可针对系统资源进行读取监控(包括CPU、内存、磁盘、网络等)。实现了同等命令行工具提供的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、iostat、iotop、uptime、pidof、tty、taskset、pmap等。

关于psutil模块的安装与详细使用方法可参考:/post/140727.htm

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python数学运算技巧总结

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python简单实现阿拉伯数字和罗马数字的互相转换功能示例

Python简单实现阿拉伯数字和罗马数字的互相转换功能示例

本文实例讲述了Python实现阿拉伯数字和罗马数字的互相转换功能。分享给大家供大家参考,具体如下: 前面一篇介绍了《Java实现的求解经典罗马数字和阿拉伯数字相互转换问题》,这里来看看P...

Python日期时间Time模块实例详解

本文实例讲述了Python日期时间Time模块。分享给大家供大家参考,具体如下: 关于时间和日期模块 python程序能用很多方式处理日期和时间,转换日期格式是一种常见的功能。 pyt...

Python中用函数作为返回值和实现闭包的教程

函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 我们来实现一个可变参数的求和。通常情况下,求和的函数是这样定义的: def calc_sum(*ar...

Appium+python自动化怎么查看程序所占端口号和IP

Appium+python自动化怎么查看程序所占端口号和IP

简介 这篇博文和分类看似没有多大关系,但是也是从上一篇衍生出来的产物,因为涉及到 FQ工具 Lantern ,就算是给关注和支持的小伙伴们拓展一下眼界和知识面。而且好多人都阅读了上一篇...

Python深入学习之特殊方法与多范式

Python一切皆对象,但同时,Python还是一个多范式语言(multi-paradigm),你不仅可以使用面向对象的方式来编写程序,还可以用面向过程的方式来编写相同功能的程序(还有函...