Python簡單實現控制電腦的方法

來源:互聯網
上載者:User
這篇文章主要介紹了Python簡單實現控制電腦的方法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

這篇文章主要介紹了Python簡單實現控制電腦的方法,涉及Python基於os及win32api等模組調用系統命令操作電腦的相關實現技巧,需要的朋友可以參考下

本文執行個體講述了Python簡單實現控制電腦的方法。分享給大家供大家參考,具體如下:

1、windows 下,CMD的一些命令:

dir:列出當前的所有檔案

time:列印當前的時間

tree:列出目前的目錄下的子結構

在cmd中進入了某種模式,退出可以嘗試以下命令:q 、exit()、Ctrl+c、Ctrl+z

運行程式:在cmd裡面直接輸入程式名稱。如:notepad、calc

按tab鍵可以補全名字

在一個檔案夾下,想快速開啟cmd: 按住shift鍵,在滑鼠點擊右鍵,可以看見命令。

想在cmd中一個檔案,但輸入名稱後顯示檔案或命令不存在。可以把檔案目錄加入path環境。

關機:shutdown -s -t +3600 -c "關機啦!" #3600為時間,即過1小時後關機,並且在螢幕上顯示“關機啦!”

取消關機命令:shutdown -a

2、Python控制cmd

2.1、os.system('xxx') xxx為在cmd中執行的命令

2.2、 subprocess.Popen('xxx',shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

xxx為在cmd中執行的命令,其他不用改。

例子:

# -*- coding: utf-8 -*-import osos.system("ping www.baidu.com")

# -*- coding: utf-8 -*-import subprocessa=subprocess.Popen("ping www.baidu.com",shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)b=a.stdout.readlines()for i in b:  print i

os.system是一步一步列印出來,而 subprocess.Popen則一次性返回最終結果。

在目錄下下建一個檔案 conf.txt。在檔案裡面輸入 ping www.baidu.com

# -*- coding: utf-8 -*-import osimport time## chra = "ping www.baidu.com"# os.system(chra)## import subprocess## a = subprocess.Popen(chra, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)# b = a.stdout.readlines()# for i in b:#   print iwhile True:  f = open('conf.txt', 'r')  content = f.read()  os.system(content)  time.sleep(5)

會看見程式每5秒運行 ping一次。改動conf.txt裡面的內容為dir ,發現程式不再ping,而是列印檔案夾的檔案名稱。

3、Python模組 win32api

3.1、win32api.Beep

Beep(freq, dur) freq代表頻率,dur代表持續的時間。

# -*- coding: utf-8 -*-import win32apiwin32api.Beep(6000,3000)

會持續三秒聽見吱吱的響聲

3.2、win32api.MessageBox

MessageBox(hwnd, message , title , style , language ) 會彈出一個視窗

hwnd : int 從哪個位置快顯視窗。一般為0

message : 視窗內容

title : 標題名字

style=win32con.MB_OK : int,The style of the message box.

language=win32api.MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT) : int,The language ID to use.

# -*- coding: utf-8 -*-import win32apiimport time#win32api.Beep(6000,3000)while True:  f = open('conf.txt', 'r')  content = f.read().split('#')  if content[0] != 'o':    win32api.MessageBox(0, content[1] , content[2] )  time.sleep(5)#conf.txt中的內容: ”1 # hi ,beautiful girl# how are you!”

彈出一個顯示名稱為“how are you!” ,內容為“ hi ,beautiful girl”的視窗。

3.3、win32api.ShellExecute

int = ShellExecute(hwnd, op , file , params , dir , bShow ) 執行程式

hwnd : intint 從哪個位置快顯視窗。一般為0

op : string 操作符。The operation to perform. May be "open", "print", or None, which defaults to "open".

file : string 檔案的地址。The name of the file to open.

params : string。可以為空白。The parameters to pass, if the file name contains an executable. Should be None for a document file.

dir : string。可以為空白。The initial directory for the application.

bShow : int 。1 表示開啟視窗;0 表示不開啟。Specifies whether the application is shown when it is opened. If the lpszFile parameter specifies a document file, this parameter is zero.

# -*- coding: utf-8 -*-import win32apiwin32api.ShellExecute(0,'open',r'C:\Users\Administrator\Pictures\toutiao\1.jpg','','',1)

運行程式就會開啟這張圖片。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.