python操作軟體
Python開發軟體可根據其用途不同分為兩種,一種是代碼編輯器,一種是Python集成開發工具,兩者的配合使用可以極大的提高Python開發人員的編程效率,以下是常用的幾款Python代碼編輯器和Python集成開發工具。
一、Python代碼編輯器
1. Sublime Text
Sublime Text是一款非常流行的代碼編輯器,支持Python代碼編輯,同時兼容所有平台,並且豐富的插件擴展了語法和編輯功能,迅捷小巧,具有良好的兼容性,很受編程人士的喜愛!
2. Vim
Vim和Vi是一種模型編輯器,它將文本查看從文本編輯中分離,VIM在原始VI之上做了諸多改進,包括可擴展模型和就地代碼構建,VIMScripts可用於各種Python開發任務!
3. Atom
Atom被稱為「21世紀可破解的文本編輯器」,可以兼容所有平台,擁有時尚的界面、文件系統瀏覽器和擴展插件市場,使用Electron構建,其運行時安裝的擴展插件可支持Python語言!
4. GNU Emacs
GNU Emacs是一款終身免費且兼容任何平台的代碼編輯器,使用強大的Lisp編程語言進行定製,並為Python開發提供各種定製腳本,是一款可擴展、可定製、自動記錄、實時顯示的編輯器,一直縈繞在UNIX周圍。
5. Visual Studio Code
Visual Studio Code是一款兼容Linux、Mac OS X和Windows 平台的全功能代碼編輯器,可擴展並且可以對幾乎所有任務進行配置,對於Python的支持可以在Visual Studio Code中安裝插件,只需快速點擊按鈕即可成功安裝,且可自動識別Python安裝和庫。
二、Python集成開發環境
1. PyCharm
PyCharm是唯一一款專門面向Python的全功能集成開發環境,同樣擁有付費版和免費開源版,PyCharm不論是在Windows、 Mac OS X系統中,還是在Linux系統中都支持快速安裝和使用。
PyCharm直接支持Python開發環境,打開一個新的文件然後就可以開始編寫代碼,也可以在PyCharm中直接運行和調試Python程序,它還支持源碼管理和項目,並且其擁有眾多便利和支持社區,能夠快速掌握學習使用!
2. Eclipse + PyDev
PyDev是Eclipse集成開發環境的一個插件,支持Python調試、代碼補全和互動式Python控制台等,在Eclipse中安裝PyDev非常便捷,只需從Eclipse中選擇「Help」點擊「Eclipse Marketplace」然後搜索PyDev,點擊安裝,必要的時候重啟Eclipse即可,對於資深Eclipse開發者來說,PyDev可以很輕松上手!
3. Visual Studio
Visual Studio是一款全功能集成開發平台,提供了免費版和付費版,可以支持各種平台的開發,且附帶了自己的擴展插件市場。在Visual Studio中可進行Python編程,並且支持Python智能感知、調試和其他工具,值得注意的是Visual Studio不支持Linux平台!
4. Spyder
Spyder是一款為了數據科學工作流做了優化的開源Python集成開發環境,它是附在Anaconda軟體包管理器發行版中的,Spyder擁有大部分集成開發環境該具備的功能,如強大語法高亮功能的代碼編輯器、Python代碼補全以及集成文件瀏覽器,其還具有其他Python編輯環境中所不具備的變數瀏覽器功能,十分適合使用Python的數據科學家們。
5. Thonny
Thonny是針對新手的一款集成開發環境,適用於全部主流平台,默認情況下,Thonny會和自帶捆綁的Python版本一起安裝,十分方便新手使用!
B. python可以代替人的界面操作,自動完成一系列,比如打開一個軟體後,編輯內容,保存。
有幾種辦法:
通過來subprocess, 用stdio的管道調用源,甚至可以實現有限的交互。管道在windows下不是很好用。
通過界面,如果是windows可以藉助pywin32的介面,點擊按鈕,移動滑鼠。
通過文件的方法,就是被調用的程序輸入輸出全是文件,我們只需要檢查文件就知道結果。這個方法最可靠
通過程序的API,如果有的話,通過API測試也方便。比如有些程序提供socket, http等介面
.net, com, java之類的。python也通常有專門的介面可以使用。
我測試過服務端軟體,基本上都是通過API實現的。 偶爾測試console程序用的是管道。 如果是WEB程序通常是直接使用HTTP或者是通過webkit。 如果是測試客戶端,一般我不用python,如果簡單的情況下,當然也可以使用python。winodws下自動測試工具強大。不需要python。
C. 學python,可以用哪些開發軟體,用什麼開發軟體最好
首推的Pycharm。
首先,PyCharm用於一般IDE具備的功能,比如, 調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制
另外,PyCharm還提供了一些很好的功能用於Django開發,同時支持Google App Engine,更酷的是,PyCharm支持IronPython。
PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語言開發時提高其效率的工具,比如調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制。此外,該IDE提供了一些高級功能,以用於支持Django框架下的專業Web開發。
其次是sublime text,Sublime Text 支持多種編程語言的語法高亮、擁有優秀的代碼自動完成功能,還擁有代碼片段(Snippet)的功能,可以將常用的代碼片段保存起來,在需要時隨時調用。支持 VIM 模式,可以使用Vim模式下的多數命令。支持宏,簡單地說就是把操作錄制下來或者自己編寫命令,然後播放剛才錄制的操作或者命令。
Sublime Text 還具有良好的擴展能力和完全開放的用戶自定義配置與神奇實用的編輯狀態恢復功能。支持強大的多行選擇和多行編輯。強大的快捷命令"可以實時搜索到相應的命令、選項、snippet 和 syntex, 按下回車就可以直接執行,減少了查找的麻煩。即時的文件切換。隨心所欲的跳轉到任意文件的任意位置。多重選擇功能允許在頁面中同時存在多個游標。
還有Jupyter, Jupyter Notebook(此前被稱為 IPython notebook)是一個互動式筆記本,支持運行 40 多種編程語言。
Jupyter Notebook 的本質是一個 Web 應用程序,便於創建和共享文學化程序文檔,支持實時代碼,數學方程,可視化和 markdown。 用途包括:數據清理和轉換,數值模擬,統計建模,機器學習等等 。數據挖掘領域中最熱門的比賽 Kaggle 里的資料都是Jupyter 格式 。
最後就是最基本的nopad++,最開始的時候是實用這款作為開發工具進行基礎練習。
D. 如何用python做系統
操作系統嗎?最好不要,要用C和C++加上匯編,因為Python沒有底層操作,所以不行。
(PS:我也有做操作系統的想法)
E. 編寫python的軟體有哪些
編寫python源代碼的軟體.首推的Pycharm。
PyCharm用於一般IDE具備的功能,比如, 調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制
另外,PyCharm還提供了一些很好的功能用於Django開發,同時支持Google App Engine,更酷的是,PyCharm支持IronPython。
其次是sublime text,Sublime Text 支持多種編程語言的語法高亮、擁有優秀的代碼自動完成功能,還擁有代碼片段(Snippet)的功能,可以將常用的代碼片段保存起來,在需要時隨時調用。支持 VIM 模式,可以使用Vim模式下的多數命令。支持宏,簡單地說就是把操作錄制下來或者自己編寫命令,然後播放剛才錄制的操作或者命令。
還有Jupyter, Jupyter Notebook(此前被稱為 IPython notebook)是一個互動式筆記本,支持運行 40 多種編程語言。
最後就是最基本的nopad++,最開始的時候是實用這款作為開發工具進行基礎練習。
F. python如何操作應用程序
我想請教一下。如何使用python腳本來實現類似於qq客戶端的登入問題。
qq客戶端的啟動使用了自帶的os
import os
os.startfile("qq客戶端的路徑")
但是彈出的還需要填寫相關的密碼賬號點擊登陸按鈕。請問這些怎麼實現呢?
因為在web端我們可以構建post之類。那麼到了客戶端我們要怎麼處理?
答案對人有幫助,有參考價值0答案沒幫助,是錯誤的答案,答非所問
使用ctypes庫,調用內存操作的相關windows API試試
G. 利用python對外部程序進行操作
代碼如下 復制代碼
object_id_list=[1, 3, 88, 99]
f=open(『mylist』, 「w」)
for id in object_id_list:
f.writelines(str(id))
f.close() #只有輸入這一句之後才會真正寫入到文件中
cat mylist
138899% # 最後有一個%表示沒有換行
>>> object_id_list=[1, 3, 88, 99]
>>> f=open(『mylist』, 「w」)
>>> for id in object_id_list:
… f.writelines(str(id) + 『\n』)
…
>>> f.close()
➜ ~ cat mylist
1
3
88
99
例子2
代碼如下 復制代碼
def processFile(inputFile, outputFile): #定義一個函數
fin = open(inputFile, 'r') #以讀的方式打開文件
fout = open(outputFile, 'w') #以寫得方式打開文件
for eachLine in fin: #讀取文件的每一行
line = eachLine.strip().decode('utf-8', 'ignore') #去除每行的首位空格,並且將文件編碼轉換成Unicode編碼
outStr = line #我沒對讀入的文本進行處理,只是直接將其輸出到文件
fout.write(outStr.strip().encode('utf-8') + 'n') #去除首位的空格,並轉回到utf-8編碼,然後輸出
fin.close() #關閉文件
fout.close()
processFile('myinputFile.txt', 'myoutputFile.txt') #調用該函數對文件進行處理
注意:1、由於Python能夠很方便的對Unicode編碼進行處理,所以最好先轉換成Unicode編程進行處理;
2、由於讀入文本後進行處理,可能會在文本末尾加上空格,所以寫入文件的時候,最好先用strip()函數清除一下首位的空格;
我使用的是Linux環境,程序寫完之後,輸入:python test.py 就能執行該程序了。
讀文件
讀文本文件
input = open('data', 'r')
#第二個參數默認為r
input = open('data')
讀二進制文件
input = open('data', 'rb')
讀取所有內容
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
讀固定位元組
file_object = open('abinfile', 'rb')
try:
while True:
chunk = file_object.read(100)
if not chunk:
break
do_something_with(chunk)
finally:
file_object.close( )
讀每行
list_of_all_the_lines = file_object.readlines( )
如果文件是文本文件,還可以直接遍歷文件對象獲取每行:
for line in file_object:
process line
3.寫文件
寫文本文件
output = open('data', 'w')
寫二進制文件
output = open('data', 'wb')
追加寫文件
output = open('data', 'w+')
寫數據
file_object = open('thefile.txt', 'w')
file_object.write(all_the_text)
file_object.close( )
寫入多行
file_object.writelines(list_of_text_strings)
注意,調用writelines寫入多行在性能上會比使用write一次性寫入要高。
在處理日誌文件的時候,常常會遇到這樣的情況:日誌文件巨大,不可能一次性把整個文件讀入到內存中進行處理,例如需要在一台物理內存為 2GB 的機器上處理一個 2GB 的日誌文件,我們可能希望每次只處理其中 200MB 的內容。
在 Python 中,內置的 File 對象直接提供了一個 readlines(sizehint) 函數來完成這樣的事情。以下面的代碼為例:
file = open('test.log', 'r')sizehint = 209715200 # 200Mposition = 0lines = file.readlines(sizehint)while not file.tell() - position < 0: position = file.tell() lines = file.readlines(sizehint)
每次調用 readlines(sizehint) 函數,會返回大約 200MB 的數據,而且所返回的必然都是完整的行數據,大多數情況下,返回的數據的位元組數會稍微比 sizehint 指定的值大一點(除最後一次調用 readlines(sizehint) 函數的時候)。通常情況下,Python 會自動將用戶指定的 sizehint 的值調整成內部緩存大小的整數倍。
file在python是一個特殊的類型,它用於在python程序中對外部的文件進行操作。在python中一切都是對象,file也不例外,file有file的方法和屬性。下面先來看如何創建一個file對象:
file(name[, mode[, buffering]])
file()函數用於創建一個file對象,它有一個別名叫open(),可能更形象一些,它們是內置函數。來看看它的參數。它參數都是以字元串的形式傳遞的。name是文件的名字。
mode是打開的模式,可選的值為r w a U,分別代表讀(默認) 寫 添加支持各種換行符的模式。用w或a模式打開文件的話,如果文件不存在,那麼就自動創建。此外,用w模式打開一個已經存在的文件時,原有文件的內容會被清空,因為一開始文件的操作的標記是在文件的開頭的,這時候進行寫操作,無疑會把原有的內容給抹掉。由於歷史的原因,換行符在不同的系統中有不同模式,比如在 unix中是一個n,而在windows中是『rn』,用U模式打開文件,就是支持所有的換行模式,也就說『r』 'n' 'rn'都可表示換行,會有一個tuple用來存貯這個文件中用到過的換行符。不過,雖說換行有多種模式,讀到python中統一用n代替。在模式字元的後面,還可以加上+ b t這兩種標識,分別表示可以對文件同時進行讀寫操作和用二進制模式、文本模式(默認)打開文件。
buffering如果為0表示不進行緩沖;如果為1表示進行「行緩沖「;如果是一個大於1的數表示緩沖區的大小,應該是以位元組為單位的。
file對象有自己的屬性和方法。先來看看file的屬性。
closed #標記文件是否已經關閉,由close()改寫
encoding #文件編碼
mode #打開模式
name #文件名
newlines #文件中用到的換行模式,是一個tuple
softspace #boolean型,一般為0,據說用於print
file的讀寫方法:
F.read([size]) #size為讀取的長度,以byte為單位
F.readline([size])
#讀一行,如果定義了size,有可能返回的只是一行的一部分
F.readlines([size])
#把文件每一行作為一個list的一個成員,並返回這個list。其實它的內部是通過循環調用readline()來實現的。如果提供size參數,size是表示讀取內容的總長,也就是說可能只讀到文件的一部分。
F.write(str)
#把str寫到文件中,write()並不會在str後加上一個換行符
F.writelines(seq)
#把seq的內容全部寫到文件中。這個函數也只是忠實地寫入,不會在每行後面加上任何東西。
file的其他方法:
F.close()
#關閉文件。python會在一個文件不用後自動關閉文件,不過這一功能沒有保證,最好還是養成自己關閉的習慣。如果一個文件在關閉後還對其進行操作會產生ValueError
F.flush()
#把緩沖區的內容寫入硬碟
F.fileno()
#返回一個長整型的」文件標簽「
F.isatty()
#文件是否是一個終端設備文件(unix系統中的)
F.tell()
#返迴文件操作標記的當前位置,以文件的開頭為原點
F.next()
#返回下一行,並將文件操作標記位移到下一行。把一個file用於for ... in file這樣的語句時,就是調用next()函數來實現遍歷的。
F.seek(offset[,whence])
#將文件打操作標記移到offset的位置。這個offset一般是相對於文件的開頭來計算的,一般為正數。但如果提供了whence參數就不一定了,whence可以為0表示從頭開始計算,1表示以當前位置為原點計算。2表示以文件末尾為原點進行計算。需要注意,如果文件以a或a+的模式打開,每次進行寫操作時,文件操作標記會自動返回到文件末尾。
F.truncate([size])
#把文件裁成規定的大小,默認的是裁到當前文件操作標記的位置。如果size比文件的大小還要大,依據系統的不同可能是不改變文件,也可能是用0把文件補到相應的大小,也可能是以一些隨機的內容加上去。
H. 學Python要安裝哪些軟體
一. 安裝python
1. 從python官網下載相應版本的python安裝包,打開網路,搜索python官網,或者輸入python官網地址https://www.python.org/
2. 點擊download選擇相應的操作平台
3. 下載完成後點擊安裝包並執行,運行出該界面
4. 這里安裝到c盤上,默認安裝
選擇第一項是系統用戶下所有用戶可啟動,Add Python 3.6 to PATH 是將安裝路徑添加到PATH環境變數中,方便直接運行於系統各種環境中(如果有多個版本的Python或測試環境可不添加,需要添加可手動添加,查找到安裝的地址並復制地址到以下操作,計算機——右鍵屬性——高級系統設置——環境變數——系統變數——選擇PATH——雙擊在變數值中添加——注意在最後添加並有「;」為隔斷符)。
我這里選擇自定義安裝,並全選安裝,開始安裝過程,請耐心等待(所有的項目都選擇,根據網速決定安裝的速度)。如果有未選擇的選項,可直接點擊取消,重新開始安裝過程。 安裝完成,開啟Python之旅。
I. 有什麼好的軟體可以實現錄制滑鼠和鍵盤的操作(盡量少手敲),生成腳本供python調用
Python也能象按鍵精靈一樣模擬鍵鼠操作,直接用Python來做吧,該模塊叫pyautogui,了解一下。
importpyautogui
print('PressCtrl-Ctoquit.')
try:
whileTrue:
#.
x,y=pyautogui.position()
positionStr='X:'+str(x).rjust(4)+'Y:'+str(y).rjust(4)
print(positionStr,end='')
print(''*len(positionStr),end='',flush=True)
exceptKeyboardInterrupt:
print(' Done.')
這是Automate_the_Boring_Stuff一書中的演示代碼,用於查找當前滑鼠的坐標。