python获取本机所有IP地址的方法

yipeiwu_com5年前Python基础

本文实例为大家分享了python获取本机所有IP地址的具体代码,供大家参考,具体内容如下

import socket

# 查看当前主机名
print('当前主机名称为 : ' + socket.gethostname())

# 根据主机名称获取当前IP
print('当前主机的IP为: ' + socket.gethostbyname(socket.gethostname()))


# Mac下上述方法均返回127.0.0.1
# 通过使用socket中的getaddrinfo中的函数获取真真的IP

# 下方代码为获取当前主机IPV4 和IPV6的所有IP地址(所有系统均通用)
addrs = socket.getaddrinfo(socket.gethostname(),None)

for item in addrs:
  print(item)

# 仅获取当前IPV4地址
print('当前主机IPV4地址为:' + [item[4][0] for item in addrs if ':' not in item[4][0]][0])

# 同上仅获取当前IPV4地址
for item in addrs:
  if ':' not in item[4][0]:
    print('当前主机IPV4地址为:' + item[4][0])
    break

运行结果


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python算法学习之桶排序算法实例(分块排序)

复制代码 代码如下:# -*- coding: utf-8 -*- def insertion_sort(A):    """插入排序,作为桶排序的子排序"...

用C++封装MySQL的API的教程

其实相信每个和mysql打过交道的程序员都应该会尝试去封装一套mysql的接口,这一次的封装已经记不清是我第几次了,但是每一次我希望都能做的比上次更好,更容易使用。 先来说一下这次的封装...

Python日志无延迟实时写入的示例

我在用python生成日志时,发现无论怎么flush(),文件内容总是不能实时写入,导致程序意外中断时一无所获。 以下是查到的解决方案(亲测可行): open 函数中有一个buffe...

Python实现PS滤镜的万花筒效果示例

Python实现PS滤镜的万花筒效果示例

本文实例讲述了Python实现PS滤镜的万花筒效果。分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 的一种滤镜效果,称为万花筒。也是对图像做各种扭曲变换,最后图像呈现...

Python的Django框架中的select_related函数对QuerySet 查询的优化

Python的Django框架中的select_related函数对QuerySet 查询的优化

1. 实例的背景说明 假定一个个人信息系统,需要记录系统中各个人的故乡、居住地、以及到过的城市。数据库设计如下: Models.py 内容如下: from django.db i...