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二维数组赋值问题

当我们采用s=[[0]*3]*2初始化一个数组,然后对s[0][0]进行赋值,改变的是第一列所有的值。因为用s = [[0]*3]*2 初始化数组,他表示的是指向这个列表的引用,所以当你...

django框架auth模块用法实例详解

django框架auth模块用法实例详解

本文实例讲述了django框架auth模块用法。分享给大家供大家参考,具体如下: auth模块的导入 from django.contrib import auth django中...

python学习开发mock接口

本文实例为大家分享了python学习开发mock接口的具体步骤,供大家参考,具体内容如下 #1.测试为什么要开发接口? 1)在别的接口没有开发好的时候, mock接口(模拟接口) 2)...

Python基础学习之常见的内建函数整理

 前言 Python针对众多的类型,提供了众多的内建函数来处理,这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作,下面话不多说了,来一看看详...

Python学习思维导图(必看篇)

Python学习思维导图(必看篇)

无意间碰到的一个大神整理的Python学习思维导图,感觉对初学者理清学习思路大有裨益,非常感谢他的分享。 14 张思维导图 基础知识 数据类型 序列 字符串 列表 & 元组...