【Python】获取操作系统相关信息

os.name  获取当前操作系统类型

posix:对应 linux
nt:对应 windows
java:对应 java 虚拟机

执行结果:

 

 

 

sys.platform 获取系统的平台标识

win32:表示 windows 系统
linux:表示 linux 系统
cygwin:表示 Windows/Cygwin 系统
darwin:表示 macOS 系统

 

执行结果:

 

 

platform 模块获取更多操作系统的详细信息

import platform   #导入platform模块
 
print('操作系统名称:', platform.system()) #获取操作系统名称
print('操作系统名称及版本号:', platform.platform()) #获取操作系统名称及版本号
print('操作系统版本号:', platform.version()) #获取操作系统版本号
print('操作系统的位数:', platform.architecture()) #获取操作系统的位数
print('计算机类型:', platform.machine()) #计算机类型
print('计算机的网络名称:', platform.node()) #计算机的网络名称
print('计算机处理器信息:', platform.processor()) #计算机处理器信息
print('包含上面所有的信息汇总:', platform.uname())#包含上面所有的信息汇总

 

执行结果:

 

 

platform 模块获取更多python的详细信息

# coding:utf-8
import platform  # 导入platform模块

print('python版本:', platform.python_version())  # 打印python版本
print('python版本:', platform.python_version_tuple())  # 打印python版本
print('python实现方式:', platform.python_implementation())  # 打印python实现方式
print('python版本分支:', platform.python_branch())  # 打印python版本分支
print('python版本修订:', platform.python_revision())  # 打印python版本修订
print('python编译信息:', platform.python_build())  # 打印python编译信息
print('python编译器:', platform.python_compiler())  # 打印python编译器

 

执行结果

 

 

psutil 模块 进程和系统工具集模块

# coding:utf-8
import psutil
import os
import signal

def show_pid():
    """显示所有进程信息"""
    print("----------------------------- 显示所有进程信息 --------------------------------")
    pids = psutil.pids()
    for pid in pids:
        p = psutil.Process(pid)
        # 根据pid获取进程名称
        process_name = p.name()
        print("进程名 : {}, pid : {}".format(process_name, pid))

def kill_pid(pid_name):
    """
    根据程序name 杀掉进程

    :param pid_name: 程序进程名称
    :return:
    """
    print("----------------------------- 杀死{}进程 --------------------------------".format(pid_name))
    pids = psutil.pids()
    for pid in pids:
        p = psutil.Process(pid)
        # 根据pid获取进程名称
        process_name = p.name()
        # kill 进程名 pid_name
        if pid_name == process_name:
            print("杀死指定进程: name({})-pid({})".format(process_name, pid))
            # os.kill(pid, signal.SIGKILL)    # AttributeError: module 'signal' has no attribute 'SIGKILL'
            os.kill(pid, signal.SIGINT)     # 解决上一条报错:在Windows中, signal()只能叫SIGABRT、SIGFPE、SIGILL、SIGINT、SIGSEGV

    exit(0)


if __name__ == "__main__":
    # show_pid()
    kill_pid("notepad++.exe")

 

执行结果:

 

posted @ 2023-01-13 16:50  Phoenixy  阅读(934)  评论(0)    收藏  举报