利用python3获取当前计算机的名字和IP
众所周知,python是一门非常强大且简洁的语言。本篇主要来为大家介绍windows和linux下如何利用python获取当前计算机的ip和计算机名。
windows下,主要是利用socket模块。具体代码如下:
import socket
获取
import socket
Compute_name=socket.getfqdn(socket.gethostname()) # get name
Compute_addr=socket.gethostbyname(Compute_name) #get ip
print(Compute_name)
print(Compute_addr)
运行结果
但是值得注意的是这里获取的ip地址是内网ip地址。
————————————————
获取本机的mac地址
1
2
3
4
|
import
uuid
def
get_mac_address():
mac
=
uuid.UUID(
int
=
uuid.getnode()).
hex
[
-
12
:]
return
":"
.join([mac[e:e
+
2
]
for
e
in
range
(
0
,
11
,
2
)])
|
——————————————————————————
Linux下获取IP地址,本机名
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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])
>>> get_ip_address('lo')
'127.0.0.1'
>>> get_ip_address('eth0')
'38.113.228.130'

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
JDK5中Lock锁的使用
(1)JDK5中Lock锁的使用 虽然我们可以理解同步代码块和同步方法的锁对象问题,但是我们并没有直接看到在哪里加上了锁,在哪里释放了锁,为了更清晰的表达如何加锁和释放锁,JDK5以后提供了一个新的锁对象Lock接口。 即:JDK5以后的针对线程的锁定操作和释放操作。 Lock实现提供了比使用synchronized方法和语句可获得的更广泛的锁定操作。 (2)Lock接口的方法 void lock() 获取锁(加锁) void unlock() 释放锁 ReentrantLock类是Lock接口的实现类。 (3)示例代码如下 1 package cn.itcast_01; 2 /* 3 * 虽然我们可以理解同步代码块和同步方法的锁对象问题,但是我们并没有直接看到在哪里加上了锁,在哪里释放了锁, 4 * 为了更清晰的表达如何加锁和释放锁,JDK5以后提供了一个新的锁对象Lock接口。 5 * 6 * Lock接口的方法: 7 * void lock() 获取锁(加锁) 8 * void unlock() 释放锁 9 * 10 * ReentrantLock类是Lock接口的实现类。 11...
-
下一篇
Java Fork Join 框架
Doug Lea 关于Java 7引入的他写的Fork/Join框架的论文 0. 摘要 这个框架通过(递归的)把问题划分为子任务,然后并行的执行这些子任务,等所有的子任务都结束的时候,再合并最终结果的这种方式来支持并行计算编程。就设计层面来说主要是围绕如何高效的去构建和管理任务队列以及工作线程来展开的。 1. 简介 Fork/Join并行方式是获取良好的并行计算性能的一种最简单同时也是最有效的设计技术。Fork/Join并行算法是我们所熟悉的分治算法的并行版本,典型的用法如下: fork将会启动一个新的并行 Fork/Join子任务 join会一直等待直到所有的子任务都结束。 Fork/Join算法,如同其他分治算法一样,总是会递归的、反复的划分子任务,直到这些子任务可以用足够简单的、短小的顺序方法来执行。 2. 设计 Fork/Join程序可以在任何支持以下特性的框架之上运行:框架能够让构建的子任务并行执行,并且拥有一种等待子任务运行结束的机制。 然而,java.lang.Thread类(同时也包括POSIX pthread,这些也是Java线程所基于的基础)对Fork/Join程序...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 2048小游戏-低调大师作品
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- MySQL数据库在高并发下的优化方案
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker快速安装Oracle11G,搭建oracle11g学习环境