python 系统调用的实例详解

yipeiwu_com5年前Python基础

python 系统调用的实例详解

              本文将通过两种方法对python 系统调用进行讲解,包括python使用CreateProcess函数运行其他程序和ctypes模块的实例,

一 python使用CreateProcess函数运行其他程序

>>> import win32process 
>>> handle = win32process.CreateProcess('c:\\windows\\notepad.exe','',None,None,0,win32process.CREATE_NO_WINDOW,None,None,win32process.STARTUPINFO()) 
>>> win32process.TerminateProcess(handle[0],0) 
>>> import win32event 
>>> handle = win32process.CreateProcess('c:\\windows\\notepad.exe','',None,None,0,win32process.CREATE_NO_WINDOW,None,None,win32process.STARTUPINFO()) 
>>> win32event.WaitForSingleObject(handle[0],-1) 
0 
 

二 ctypes模块简介

以下代码是使用ctype模块在windows下直接调用user32.dll中的MessageBoxA函数。

>>> from ctypes import * 
>>> user32 = windll.LoadLibrary('user32.dll') 
>>> user32.MessageBoxA(0,str.encode('Ctype is cool!'),str.encode('Ctype'),0) 
1 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

Python实现解析Bit Torrent种子文件内容的方法

本文实例讲述了Python实现解析BitTorrent种子文件内容的方法。分享给大家供大家参考,具体如下: 有很多种子文件,有时候记不清里面都是什么东西,又不想一个一个的拖放到迅雷或BT...

解决Pytorch 训练与测试时爆显存(out of memory)的问题

Pytorch 训练时有时候会因为加载的东西过多而爆显存,有些时候这种情况还可以使用cuda的清理技术进行修整,当然如果模型实在太大,那也没办法。 使用torch.cuda.empty_...

python机器学习案例教程——K最近邻算法的实现

K最近邻属于一种分类算法,他的解释最容易,近朱者赤,近墨者黑,我们想看一个人是什么样的,看他的朋友是什么样的就可以了。当然其他还牵着到,看哪方面和朋友比较接近(对象特征),怎样才算是跟朋...

详解Pandas之容易让人混淆的行选择和列选择

详解Pandas之容易让人混淆的行选择和列选择

在刚学Pandas时,行选择和列选择非常容易混淆,在这里进行一下讨论和归纳 本文的数据来源:https://github.com/fivethirtyeight/data/tree/ma...

用virtualenv建立多个Python独立虚拟开发环境

用virtualenv建立多个Python独立虚拟开发环境

本文为大家分享了virtualenv建立多个Python独立虚拟开发环境,供大家参考,具体内容如下 1、安装virtualenv: pip install virtualenv 2...