python获取cpu 内存 网络 进程
时间: 2024-09-29 11:12:35 浏览: 51
在Python中,我们可以使用内置模块如`psutil`来获取CPU内存、网络和进程的信息。以下是简要介绍:
1. **CPU内存**:`psutil.cpu_percent()`可以获取CPU的占用率,`virtual_memory()`函数则提供关于物理内存和交换空间的详细信息,包括总内存、已用内存、空闲内存等。
```python
import psutil
cpu_usage = psutil.cpu_percent(interval=1) # 获取CPU占用率
memory_info = psutil.virtual_memory()
total_memory = memory_info.total
used_memory = memory_info.used
free_memory = memory_info.free
```
2. **网络**:通过`socket`库,你可以获取本机的网络连接状态。例如,`net_if_addrs()`用于获取所有网卡的地址信息,`gethostbyname_ex()`可以解析IP地址到主机名。
```python
import socket
ifaddrs = socket.getaddrinfo('0.0.0.0', None)
for info in ifaddrs:
family, _, _, _, sockaddr = info
print(family, sockaddr)
```
3. **进程**:`psutil.process_iter()`遍历当前系统的进程,`Process`对象可用于获取特定进程的相关信息,如PID、名字、内存占用等。
```python
import psutil
for proc in psutil.process_iter(['pid', 'name']):
print(proc.info())
```
请注意,这些操作需要相应的权限,并且不是所有的系统信息都能立即获取,特别是对于受限环境,如Docker容器内的进程。
阅读全文
相关推荐

















