python小工具開發
① 用python寫過哪些的小工具
為了逃避學校布置的美術作業,寫過一個畫素描的程序。
從後再也不擔心美術作業了。
也就是利用Python的PIL庫來 將彩色圖片轉化為素描效果的圖片
更新說明:
前面那個程序寫的太粗糙了,不好意思拿出來分享,重新寫了一遍,加上了GUI圖形界面。
配置環境:
windows 10
python 3.5
image.py
from PIL import Image
import numpy as np
import os
import join
import time
def image(sta,end,depths=10):
a = np.asarray(Image.open(sta).convert('L')).astype('float')
depth = depths # (0-100)
grad = np.gradient(a) # 取圖像灰度的梯度值
grad_x, grad_y = grad # 分別取橫縱圖像梯度值
grad_x = grad_x * depth / 100.
grad_y = grad_y * depth / 100.
A = np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.)
uni_x = grad_x / A
uni_y = grad_y / A
uni_z = 1. / A
vec_el = np.pi / 2.2 # 光源的俯視角度,弧度值
vec_az = np.pi / 4. # 光源的方位角度,弧度值
dx = np.cos(vec_el) * np.cos(vec_az) # 光源對x 軸的影響
dy = np.cos(vec_el) * np.sin(vec_az) # 光源對y 軸的影響
dz = np.sin(vec_el) # 光源對z 軸的影響
b = 255 * (dx * uni_x + dy * uni_y + dz * uni_z) # 光源歸一化
b = b.clip(0, 255)
im = Image.fromarray(b.astype('uint8')) # 重構圖像
im.save(end)
def mains(numbers):
number = int(numbers)
startss = os.listdir(".\輸入----圖片")
time.sleep(2)
for starts in startss:
start = ''.join(starts)
print('正在轉化--圖片: ' + start)
sta = './' + '輸入----圖片/' + start
end = './' + '輸出----圖片/' + 'HD_20' + start
image(sta=sta,end=end,depths=number)
簡單來說,就是利用python的Numpy庫,將圖像降維轉化為數字化的數據,之後對數據進行操作,再利用pillow庫將操作好的數據轉化為素描效果的圖片。
GUI圖形界面程序
main.py
import os
from image import mains
from tkinter import *
def exists_mkdir():
if os.path.exists('輸出----圖片') and os.path.exists('輸入----圖片'):
pass
else:
os.mkdir('輸出----圖片')
os.mkdir('輸入----圖片')
def images():
try:
s1 = e1.get()
a = mains(s1)
c["text"] = "我們的程序運行成功了"
except Exception:
c["text"] = "程序運行出錯了,可能是缺少了兩個配置文件"
#創建程序運行需要的工作目錄
exists_mkdir()
tk = Tk()
# 設置窗口大小和位置
tk.geometry('430x350+80+60')
# 不允許改變窗口大小
tk.resizable(False, False)
## 用來顯示Label組件
tk.title('素描圖生成器')
w1 = Label(tk,text='作者博客:www.liuchaoblog.live')
w = Label(tk,text='')
w2 = Label(tk,text='歡迎使用:')
w3 = Label(tk,text='步驟一:將需要轉化的圖片放入 輸入----圖片 文件夾下')
w4 = Label(tk,text='步驟二:輸入 0-100的數值,數值越大,顏色越深。--------標准參數是 10 ')
w5 = Label(tk,text='步驟三:點擊確認 運行程序 等待出現提示')
w6 = Label(tk,text='步驟四:到輸入----圖片 文件夾找到素描圖')
w1.grid(row=0,column=0,sticky=W)
w.grid(row=1,column=0,sticky=W)
w2.grid(row=2,column=0,sticky=W)
w3.grid(row=3,column=0,sticky=W)
w4.grid(row=4,column=0,sticky=W)
w5.grid(row=5,column=0,sticky=W)
w6.grid(row=6,column=0,sticky=W)
l = Label(tk,text="輸入 0-100的數值")
l.grid(row=8,column=0,sticky=E)
## 用來顯示輸入框
e1 = Entry(tk)
e1.grid(row=10,column=0,sticky=E)
## 用來顯示Button
b = Button(tk,text='確定',command=images)
b.grid(row=12,column=0,sticky=E)
c = Label(tk,text="",background="yellow")
c.grid(row = 15)
# 啟動消息主循環
tk.mainloop()
運行效果:
這個程序我用pyinstaller做成exe文件了。
② python ide哪個好用
1. Pyscripter
Pyscriptor是一個開源的Python集成開發環境,很富有競爭力,同樣有諸如代碼自動完成、語法檢查、視圖分割文件編輯等功能。
2. Wing
Wing是一個Python語言的超強IDE,適合做互動式的Python開發.Wing IDE同樣支持自動代碼完成、代碼錯誤檢查、開發技巧提示等,而且Wing IDE也支持多種操作系統,包括Windows、linux和Mac OS X。
3. Emacs
Emacs是一個可擴展的文本編輯器,同樣支持Python開發.Emacs本身以Lisp解釋器作為其核心,而且包含了大量的擴展。
4. Pycharm
Pycharm是一個跨平台的Python開發工具,是JetBrains公司的產品.其特徵包括:自動代碼完成、集成的Python調試器、括弧自動匹配、代碼折疊.Pycharm支持Windows、MacOS以及Linux等系統,而且可以遠程開發、調試、運行程序。
5. Sublime Text
SublimeText也是適合Python開發的IDE工具,SublimeText雖然僅僅是一個編輯器,但是它有豐富的插件,使得對Python開發的支持非常到位。
6. Vim
Vim是一個簡潔、高效的工具,也適合做Python開發。
7. Komodo Edit
Komodo Edit是一個免費的、開源的、專業的Python IDE,其特徵是非菜單的操作方式,開發高效。
8. Eclipse with PyDev
Eclipse+PyDev插件,很適合開發Python Web應用,其特徵包括自動代碼完成、語法高亮、代碼分析、調試器、以及內置的交互瀏覽器。
③ 有哪些值得推薦的 Python 開發工具
第一款:最強終端 Upterm
它是一個全平台的終端,可以說是終端里的IDE,有著強大的自動補全功能,之前的名字叫做:BlackWindow。有人跟他說這個名字不利於社區推廣,改名叫Upterm之後現在已經17000+Star了。
第二款:互動式解釋器 PtPython
一個互動式的Python解釋器,支持語法高亮、提示,甚至是VIM和emacs的鍵入模式。
第三款:包管理必備 Anaconda
強烈推薦:Anaconda。它能幫你安裝許多麻煩的東西,包括:Python環境、pip包管理工具、常用的庫、配置好環境路徑等等。這些小事情小白自己一個個去做的話,容易遇到各種問題,也容易造成挫敗感。如果你想用Python搞數據方面的事情,安裝它就可以了,它甚至開發了一套JIT的解釋器Numba。所以Anaconda有了JIT之後,對線上科學計算效率要求比較高的東西也可以搞定了。
第四款:編輯器 Sublime3
如果你是小白的話,推薦從PyCharm開始上手,但是有時候寫一些輕量的小腳本,就會想到輕量級一點的工具。Sublime3很多地方都有了極大的提升,並且用起來比原來還要簡單,配合安裝Anaconda或CodeIntel插件,可以讓Sublime3擁有近乎IDE的體驗。
第五款:前端在線編輯器 CodeSandbox
雖然這個不算是真正意義上的Python開發工具,但如果後端工程師想要寫前端的話,這個在線編輯器太方便了,節省了後端工程師的生命。不用安裝npm的幾千個包了,它已經在雲端完成了,才讓你直接就可以上手寫代碼、看效果。對於React、Vue這些主流前端框架都支持。
第六款:Python Tutor
Python Tutor是一個免費教育工具,可幫助學生攻克編程學習中的基礎障礙,理解每一行源代碼在程序執行時在計算機中的過程。通過這個工具,教師或學生可以直接在web瀏覽器中編寫Python代碼,並逐步可視化地運行程序。
第七款:IPython
如何進行互動式編程?沒錯,就是通過IPython。IPython相對於Python自帶的shell要好用的多,並且能夠支持代碼縮進、TAB鍵補全代碼等功能。如果進行互動式編程,這是不可缺少的工具。
第八款:Jupyter Notebook
Jupyter Notebook就像一個草稿本,能將文本注釋、數學方程、代碼和可視化內容全部組合到一個易於共享的文檔中,以Web頁面的方式展示,它是數據分析、機器學習的必備工具。
第九款:Pycharm
Pycharm是程序員常常使用的開發工具,簡單、易用,並且能夠設置不同的主題模式,根據自己的喜好來設置代碼風格。
第十款:Python Tutor
這個工具可能對初學者比較有用,而對於中高級程序員則用處較少。這個工具的特色是能夠清楚的理解每一行代碼是如何在計算機中執行的,中高級程序員一般通過分步調試可以實現類似的功能。這個工具對於最初接觸Python、最初來學習編程的同學還是非常有用的,初學者可以體驗一下。
④ python如何開發小軟體
如果要開發小軟體的話,要看具體的這個小軟體的程度,或者是怎樣去把這個小軟體給開發出來,這些都是有一定的原因或產生的道理,都是可以去開發進行軟體的調試的。
⑤ python編程開發軟體有哪些
Python開發軟體可根據其用途不同分為兩種,一種是Python代碼編輯器,一種是Python集成開發工具,兩者的配合使用可以極大的提高
Python開發人員的編程效率,以下是常用的幾款Python代碼編輯器和Python集成開發工具。
一、Python代碼編輯器
1. SublimeText
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版本一起安裝,十分方便
新手使用!
以上是比較常用的幾款Python代碼編輯器和Python集成開發環境,Python開發人員、正在學習Python開發以及想從事Python開發工作
人員可以嘗試使用一下,選擇自己最順手的開發工具,對以後的工作可以起到事半功倍的效果!
更多學習內容,請點擊Python學習網!
⑥ python有哪些開發工具
想要學會python,不僅要學習相關的基礎知識和教程,對python各種工具的熟悉使用才能讓你在工作中迅速成長!有很多優秀的開發者前輩,為我們提供了好用的python工具,來幫我們更方便的實現開發想法,下面就給大家分享5個好用的python開發工具!
工具一:Anaconda
這個工具就是用來解決Python 開發過程中遇到各種包管理和版本的問題,為了解決很多 Windows 平台的安裝包無法正常使用,必須要有Anoconda,它包含了一個包管理工具、一個Python管理環境和常用數據科學包,是數據分析的標配!
工具二:Skulpt
這個工具是用 Javascript 實現在線 Python 執行環境,實現了在瀏覽器中輕松運行 Python 代碼。搭配使用CodeMirror 編輯器就類似於一個基本的在線Python編輯&運行環境。
工具三:Python Tutor
這款工具是由 Philip Guo 開發的免費教育工具,適用於python小白,能夠幫助小白解決一些編程學習中的基礎障礙,還能幫助小白理解每一行源代碼在程序執行時在計算機中的過程。
大部分被教師或學生使用,但也適用於python小白,可以直接在 Web 瀏覽器中編寫 Python 代碼,可以把不知道如何在內存中如何運行的代碼,拷貝到Tutor里進行可視化執行,有助於小白對基礎的扎實掌握。
工具四:IPython
這款工具是for Humans 的 Python 互動式解釋器,功能非常強大,能夠支持變數自動補全,自動縮進,支持 bash shell 命令,內置了許多實用功能和函數,同時它也是科學計算和交互可視化的最佳平台。
它還具有以下特性:
·更強的交互 shell(基於 Qt 的終端);
·一個基於瀏覽器的記事本,支持代碼,純文本,數學公式,內置圖表和其他富媒體;
·支持交互數據可視化和圖形界面工具;
·靈活,可嵌入解釋器載入到任意一個自有工程里;
·簡單易用,用於並行計算的高性能工具。
工具五:Jupyter Notebook
看名字就知道Notebook,這款工具就像一個草稿本,能儲存文本注釋、數學方程、代碼和可視化內容等,然後以 Web 的方式呈現。有數據分析、機器學習需求同學的必備工具。
python學習網,大量的免費python視頻教程,歡迎在線學習!
⑦ 享學課堂盤點哪十款python開發工具最受歡迎
1.github
Git是一個分布式的版本控制系統,最初由Linus Torvalds編寫,用作Linux內核代碼的管理。在推出後,Git在其它項目中也取得了很大成功,尤其是在Ruby社區中。目前,包括Rubinius、Merb和Bitcoin在內的很多知名項目都使用了Git。Git同樣可以被諸如Capistrano和Vlad the Deployer這樣的部署工具所使用。
2.Vim
Vim 是高級文本編輯器,旨在提供實際的 Unix 編輯器『Vi』功能,支持更多更完善的特性集。Vim 不需要花費太多的學習時間,一旦你需要一個無縫的編程體驗,那麼就會把 Vim 集成到你的工作流中。
3.Eclipse with PyDev
Eclipse 是非常流行的 IDE,而且已經有了很久的歷史。Eclipse with Pydev 允許開發者創建有用和互動式的 Web 應用。PyDev 是 Eclipse 開發 Python 的 IDE,支持 Python,Jython和 IronPython 的開發。
4、Sublime Text
Sublime Text 是開發者中最流行的編輯器之一,多功能,支持多種語言,而且在開發者社區非常受歡迎。Sublime 有自己的包管理器,開發者可以使用TA來安裝組件,插件和額外的樣式,所有這些都能提升你的編碼體驗。
5.Emacs
Emacs是一種強大的文本編輯器,在程序員和其他以技術工作為主的計算機用戶中廣受歡迎。EMACS,即Editor MACroS(宏編輯器)的縮寫,最初由Richard Stallman於1975年在MIT協同Guy Steele共同完成。
6.Komodo Edit
Open Komodo 是Komodo edit 的開源發布 ,一個免費的動態語言的多語言編輯器,基於屢獲殊榮的Komodo IDE。既支持Perl、PHP、Python、Ruby、Tcl 等服務端語言,也支持CSS、HTML、Java、XML等。在使用Komodo Edit 編寫代碼時,通過其提供的自動完成、調用提示、語法糾正、代碼片斷等功能可以充分提高你的編碼效率,助你寫出高質量的代碼。
⑧ 開發Python用哪些工具好
剛學python時,面對簡陋的官方版idle和一大堆開發平台和發行版,不知道究竟如何下手。在進行多方嘗試後,我最後的選擇是Anaconda + Pycharm,用anaconda集成的ipython做工作台,做一些分析和小段程序調試的工作,用Pycharm寫相應腳本和程序包的開發。這兩個工具都是跨平台的,也都有免費版本。
具體來說Anaconda集成了幾乎所有我需要的包庫,包含了我整個工作流程,做數據分析的pandas\scipy\numpy、繪圖的matplotlib、讀寫Excel文檔的xlrd/xlwt,鏈接SQL資料庫的SQLalchemy、機器學習框架sklearn等。對於Anaconda集成的兩個工作平台,Spyder——一個類似於Matlab和Rstudio的IDE,是專注於面向數據的分析的,因為其特點也主要是數據區的存在,可以即時知道變數值的變化;Ipython——一個基於cell的shell界面,可以理解為python自帶shell的增強版,它將程序分成一塊一塊的cell,每個cell可以包含多條語句,可以單獨調試運行,並將結果保存在內存中,cell之間可以相互調用,並保持一定的相互獨立。
⑨ 有哪些值得推薦的 Python 開發工具
前提:用來做數據處理和相關的系統開發
剛學python時,面對簡陋的官方版idle和一大堆開發平台和發行版,不知道究竟如何下手。在進行多方嘗試後,我最後的選擇是Anaconda + Pycharm,用anaconda集成的ipython做工作台,做一些分析和小段程序調試的工作,用Pycharm寫相應腳本和程序包的開發。這兩個工具都是跨平台的,也都有免費版本。
具體來說Anaconda集成了幾乎所有我需要的包庫,包含了我整個工作流程,做數據分析的pandas\scipy\numpy、繪圖的matplotlib、讀寫Excel文檔的xlrd/xlwt,鏈接SQL資料庫的SQLalchemy、機器學習框架sklearn等。對於Anaconda集成的兩個工作平台,Spyder——一個類似於Matlab和Rstudio的IDE,是專注於面向數據的分析的,因為其特點也主要是數據區的存在,可以即時知道變數值的變化;Ipython——一個基於cell的shell界面,可以理解為python自帶shell的增強版,它將程序分成一塊一塊的cell,每個cell可以包含多條語句,可以單獨調試運行,並將結果保存在內存中,cell之間可以相互調用,並保持一定的相互獨立。
可以說有了anaconda自帶的這兩個工具,足夠做數據處理相關的工作了(本身anaconda就是一個為了數據科學而誕生的發行版),但如果涉及到腳本程序和包的開發,感覺spyder還是有點弱,在試過IDE,代碼編輯器(比如visual code、sublime等)+插件,這兩種方案後,我最後選擇了集成度更高的成熟IDE——Pycharm替換spyder作為主要的開發平台,看我頭像也可以知道我是一個噴氣大腦的死忠,他們家的IDE真的很好用~理由如下:
1、首先作為學生,可以通過e郵箱申請到Jetbrains全家桶,即便無法獲取授權,pycharm的community版本免費並且功能足夠
2、對於pycharm,可以方便快捷地切換python不同版本的解釋器,甚至可以安裝相同版本的python解釋器配置不同的開發環境,這可以解決有些包之間沖突的情況,也可以針對有些框架按需裝包;並且pycharm內置包管理,可以免去pip或者conda方式管理包。
3、pycharm這個IDE的顏色方案、拼寫補全、函數聯想、函數跳轉源代碼、斷點調試及debug等功能都讓我用的十分順手。
總之我現在的工作流程就是,先用對我需要的功能進行設計,而後在ipython界面下設計調試每個功能模塊,調試成功後放到pycharm中組合起來,寫成腳本文件,最後用pycharm做調試形成成品。
⑩ 想自己學習Python開發。使用什麼開發工具好一些呢
如果想寫python的程序,至少需要安裝一個python 的解釋器。用來解釋python的程序文件。
編輯器的話,沒有誰好誰好,主要還是看個人的喜好,比較主流的幾下幾個。
1. pycharm:這是一個集成化開發工具,集編輯運行一體,比較方便。但是軟體收費,可以下載社區版初期學習使用
2. sublime text:比較好用的輕量級文本編輯工具。需要配合解釋器開發
3. vim編輯器:linux 或mac 系統下的命令行界面的文本編輯工具,也可以編寫程序。需要對系統有所了解才能上手。
4. 其它文本編輯工具
如果想學習Python,可以看看黑馬程序員的學習視頻啊,有600集的那個很好自學哦~歡迎你採納我的回答