使用python 获取进程pid号的方法

yipeiwu_com6年前Python基础

保存为.py文件后 运行脚本在后面添加进程名称即可 比如:python proinfo.py qq 即可获取QQ的进程信息,注意不区分大小写

复制代码 代码如下:
#-*- encoding:UTF-8 -*-
import os
import sys
import string
import psutil
import re

def get_pid(name):
  process_list = psutil.get_process_list()
  regex = "pid=(\d+),\sname=\'" + name + "\'"
  print regex
  pid = 0
  for line in process_list:
    process_info = str(line)
    ini_regex = re.compile(regex)
    result = ini_regex.search(process_info)
    if result != None:
        pid = string.atoi(result.group(1))
        print result.group()
        break
def main(argv):<br>  name = argv[1]<br>  get_pid(name)

if __name__ == "__main__":
  main(sys.argv)

代码说明:

1.import psutil 需要安装,用于获取linux下进程列表

复制代码 代码如下:
process_list = psutil.get_process_list() #获取进程列表

2.import re: python处理正则的模块

复制代码 代码如下:
regex = "pid=(\d+),\sname=\'" + name + "\'" #组成string类型的正则表达式
ini_regex = re.compile(regex)#初始化正则表达式
result = ini_regex.search(process_info)#正则表达式匹配
result.group(0):匹配到的整个字符串的内容
result.group(1):匹配第一个()中的内容

相关文章

Python的垃圾回收机制深入分析

一、概述: Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”(mark and swee...

浅谈python字典多键值及重复键值的使用

浅谈python字典多键值及重复键值的使用

在python中使用字典,格式如下: dict={ key1:value1 , key2;value2 ...} 在实际访问字典值时的使用格式如下: dict[key] 多键值 字典的...

Python3.6通过自带的urllib通过get或post方法请求url的实例

废话不多说,直接上代码: # coding:utf-8 from urllib import request from urllib import parse url = "http...

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

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

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

基于python 处理中文路径的终极解决方法

1 、据说python3就没有这个问题了 2 、u'字符串' 代表是unicode格式的数据,路径最好写成这个格式,别直接跟字符串'字符串'这类数据相加,相加之后type就是str,这样...