日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PyDev的使用-高效Py编程

發布時間:2023/12/31 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PyDev的使用-高效Py编程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?? 對于VIM使用Python,可以使用Flake8:有人將PyFlakes和PEP 8兩個代碼檢查軟件整合到一起,打造出flake8,該工具可通過插件vim-flake8與vim整合.

? 對于Eclipse的使用,Pydev是個好工具!

(1):pydev主頁鏈接:http://www.pydev.org/


如何寫出高質量的Python程序:http://www.cnblogs.com/onlytiancai/archive/2012/09/11/How_to_write_high-quality_python_program.html

python打包指南:http://www.ibm.com/developerworks/cn/opensource/os-pythonpackaging/


(2):Eclipse安裝Pydev的兩種方法:http://www.codecho.com/two-ways-fo-installing-pedev-in-eclipse/

很久沒有接觸到Python了。以前都是在用2.7版本的,這次索性就安裝3.2的了。一般的小程序其實自帶的IDLE就足夠用了。但是其他的或者喜歡用Eclipse的,pydev成了最佳的選擇。

安裝其實很簡單的,這里介紹下兩種安裝方法。當然你首先需要安裝JDK和Eclipse, 以及Python。

方法一:

1. 直接到http://pydev.org/download.html 下載離線安裝ZIP包。

2. 一種比較隨意的方法就是把壓縮包里面的plugins解壓到Eclipse安裝目錄下對應的目錄,features目錄也是同樣操作。但是你如果不想搞亂原版本的Eclipse,可以選擇如下操作:

  • 在Eclipse安裝目錄下新建一個links文件夾。然后再在links文件夾下新建名為eclipse的目錄,最后把pedev.zip的壓縮包內容解壓到eclipse目錄中。
  • 在links目錄下,新建一個名為pydev.link的文件,文件的內容為:path=C:\ItDevelop\eclipse\links\eclipse ,(其中path=C:\ItDevelop\eclipse為eclipse的安裝目錄)

3. 之后重啟Eclipse就可以了。如何檢查是否已經正確安裝pydev? 打開Eclipse–>Windows–>preferences,然后在左邊的樹狀結構中就能找到Pydev選項。

方法二:

其實指的是在線安裝。如果你的是Eclipse3.7版本的,那么直接打開Eclipse–>help–>eclipse marketplace,如何搜索下Pydev之后安裝即可。

如果沒有這個功能,可以選擇install new software,然后輸入安裝地址:http://pydev.org/updates




(3):測試PyDev安裝環境:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-pydev/index.html

驗證是否成功安裝 PyDev

如何才能驗證 Eclipse Update Manager 是否已經成功安裝了所需的 PyDev 插件了呢?

選擇 Help->About Eclipse SDK->Plug-in Details,將會出現 About Eclipse SDK Plug-ins 窗口,該窗口里列出了所有已經安裝了的 Eclipse 插件。檢查一下在 Plug-in Id 一欄中是否至少有五個以上分別以 com.python.pydev 和org.python.pydev 開頭的插件。如果是,那么 PyDev已經被成功安裝,否則,安裝出了一些問題,需要根據具體問題來做具體的分析。

圖 3. 驗證 PyDev 插件

配置 PyDev

安裝好 PyDev 之后,需要配置 Python/Jython 解釋器,配置過程很簡單。

在 Eclipse 菜單欄中,選擇 Window > Preferences > Pydev > Interpreter - (Python/Jython),在這里配置 Python/Jython 解釋器,下面以 Python 為例介紹如何配置。

首先需要添加已安裝的解釋器。這里,Python 安裝在 C:\Python25 路徑下。單擊 New,選擇 Python 解釋器 python.exe,打開后顯示出一個包含很多復選框的窗口,選擇需要加入系統PYTHONPATH的路徑,單擊 Ok。

圖 4. 配置 PyDev

接下來,檢查一下配置的結果是否正確。

在 System PYTHONPATH里,檢查是否包含配置過程中加入的那些路徑。這里列出了所有的系統所需的庫文件夾。

另外,在 Forced builtin libs 里,列出了 Python 的內置庫。對于 Python 而言,這樣的內置庫大約有50個,而對于 Jython 來說,則有30個左右。

這樣,Python 解釋器就配置好了。

PyDev Package Explorer

創建項目

在開展工作之前,需要創建一個新的項目。在 Eclipse 菜單欄中,選擇 File > New > Project > Pydev > Pydev Project,單擊 Next。

圖 5. 創建 Pydev 項目

這時,顯示出 Pydev Project 窗口,輸入項目名稱、選擇工作路徑、選擇 Python 解釋器的版本類型并選中復選框,然后單擊 Next,進入關聯項目的窗口,如果不需要關聯其他項目,則可以直接單擊 Finish,完成項目的創建。

創建 Python 包和模塊

接下來,在剛創建的項目中開始創建 Python 包和模塊。

  • 進入 Pydev 透視圖,在 Python Package Explorer 中,右鍵單擊 src,選擇 New->Pydev Package,輸入 Package 名稱并單擊 Finish,Python 包就創建好了,此時,自動生成__init__.py 文件,該文件不包含任何內容。
  • 注意:如果在創建項目的時候沒有選中“Create default src folder and add it to the pythonpath”復選框,則需要通過 File > New > Other > Source Folder 手動創建一個源代碼文件夾。

  • 創建完 Pydev Package 后,右鍵單擊創建的包,選擇 New->Pydev Module,輸入模塊名稱,單擊 Finish。這樣,Python 模塊就建成了。
  • 編輯源程序

    對于源程序的一些基本編輯方法,就不做介紹了。下面介紹幾點 Pydev 提供的非常實用的編輯功能。

  • 語法錯誤提示
  • Python 開發者在創建修改程序的過程中,如果能及時發現編輯過程中出現的語法錯誤,無疑對整個項目開發的質量和進展都是非常重要的。在 Python 透視圖中,Pydev Package Explorer 中列出了項目的源代碼,雙擊其中某一個 Python 文件,如果該文件包含語法錯誤,錯誤會以很醒目的方式展現出來。

    圖 6. Pydev 文件語法錯誤提示

    如果想把整個項目中所有包含語法錯誤的文件顯示出來,可以從 Python 透視圖自由切換到 Java 透視圖。在 Java Package 里,一個個醒目的小紅叉標記了所有包含語法錯誤的 Python文件。

    圖 7. Pydev 項目語法錯誤提示
  • 源代碼編輯助手 (Content Assistents)
  • 源代碼編輯助手 (Content Assistents,以下簡稱 CA),顧名思義,即用于幫助開發者編輯源程序,它提供了諸多方便實用的功能,引導開發者進行高效快速的項目開發。

    通過快捷鍵 Ctrl+1 可以激活 CA,它支持的功能如下:

    PyDev

  • Move import to global scope
  • Create docstring
  • Assign result to new local variable (or field)
  • Assign parameters to attributes
  • Surround code with try..except or try..finally
  • PyDev Extensions

  • Make import for undefined token
  • Ignore error
  • Don't analyze module
  • 在安裝 PyDev 時,PyDev 和 PyDev Extensions 包都已安裝,所以 CA 的這幾大功能現在都支持。首先,先介紹如何使用 PyDev 包含的 CA 功能。

    • PyDev 的 CA 功能
  • Move import to global scope
  • 以如下代碼為例,將光標移至 import sys 后,啟動快捷鍵 Ctrl+1 激活 CA,”Move import to global scope” 出現在標簽中,按 Enter 應用此功能。如果不想應用該功能,可以按 Esc 鍵取消。

    #!/usr/bin/python –u sys.path.append(“./VirtualFS”) import sys

    應用該功能后,import sys 被成功移至全局范圍內,消除了之前的錯誤。改變后的代碼如下。

    #!/usr/bin/python –u import sys sys.path.append(“./VirtualFS”)
  • Create docstring
  • Create docstring 功能可以自動為函數添加參數注解。將光標移至如下代碼行,啟動快捷鍵Ctrl+1 激活 CA,標簽欄中出現 ”Make docstring”。

    def __init__(self, dbUser, dbPswd, dbHost):

    按 Enter 應用該功能后,自動為該函數添加了參數注解。

    def __init__(self, dbUser, dbPswd, dbHost):'''@param virtualOperator:@param database:@param hostname:@param workDir:'''
  • Assign result to new local variable (or field)
  • CA 還提供一種功能能夠將函數返回結果賦給新的內部變量。以函數 callMethod 為例,將光標移至 a.callMethod() 行激活 CA。

    def method (self, a):a.callMethod()

    選擇 ”Assign to field(self, callMethod)” 或者 ”Assign to local(callMethod)”,可以將a.callMethod() 結果賦給新的內部變量 self.callMethod,改變后的代碼如下。

    def method (self, a):self.callMethod = a.callMethod()
  • Assign parameters to attributes
  • 在程序編輯過程中,如果需要把函數參數賦給變量,可以使用 CA 的 Assign parameters to attributes 功能自動完成這樣的需求。將光標移至函數 m1 所在行,激活 CA。

    class Foo(object):Def m1(self, a, b):

    在標簽欄中選擇 ”Assign parameters to attributes”,自動生成兩行代碼將參數 a,b 賦給同名變量。

    class Foo(object):def m1(self, a, b):self.a = aself.b = b
  • Surround code with try..except or try..finally
  • 對可能產生異常的代碼,要進行異常捕獲,通常使用 try..except 或者 try..finally 語句來捕獲異常。選中一段代碼 print usage,激活 CA 的 ” Surround code with try..except or try..finally”功能,可以自動對 print usage 進行異常捕獲。

    import sys def method (self, usage):try:print usageexcept:raise

    下面,再介紹 PyDev Extensions 包含的 CA 功能是如何被運用的。

    • PyDev Extension 的 CA 功能
  • Make import for undefined token
  • 以如下一段代碼為例,xmlreader 未定義,語法分析出錯。

    class Test:def method(self):xmlreader

    將鼠標移至出錯行,啟動快捷鍵 Ctrl+1 激活 CA,選擇標簽欄中的 ”Import xmlreader(xml.sax)”,自動生成一行代碼 from xml.sax import xmlreader,語法錯誤消除。

    from xml.sax import xmlreaderclass Test:def method(self):xmlreader
  • Ignore error
  • 仍以上述代碼為例,由于 xmlreader 沒有被定義,包含語法錯誤,在這一行激活 CA,選擇 ”UndefinedVariable”,語法錯誤被忽略,xmlreader 后自動生成一行注釋標明 ”#@UndefinedVariable”。

    class Test:def method(self):xmlreader #@UndefinedVariable
  • Don't analyze module
  • 語法分析器可以幫助顯示包含語法錯誤的代碼,但在程序編輯過程中,有時候需要刻意取消對程序的語法分析,CA 的 Don't analyze module 提供了這樣的功能。

    將光標移至程序第一行,激活 CA,選擇 ”@PydevCodeAnalysisIgnore”,自動生成一行代碼 ”#@ PydevCodeAnalysisIgnore”,忽略對程序體的語法分析。

    #@PydevCodeAnalysisIgnoreclass Test:def method(self):xmlreader
  • Quick Outline
  • 對特定的 Python 文件,Pydev Extensions 提供的 Quick Outline 能最簡單快捷地獲取該文件的組織結構,并能在該文件中方便地查詢定位所需信息。

    在 Pydev 透視圖中,選擇 Source -> Show Quick Outline,或者使用快捷鍵 Ctrl+O 啟動該功能。

    Python 文件的類、函數等組織架構便以樹狀形式被形象地展現出來。同時,Filter 提供了查詢定位的功能,可以方便地查詢所需信息并定位到相應的代碼段。

    圖 8. Quick Outline
  • Globals Browser
  • Globals Browser 是 Pydev Extensions 提供的另外一種強大的查詢定位功能。它可以查詢定位整個工程內的一些定義和屬性,包括:

    • 類定義
    • 方法定義
    • 全局變量
    • 類以及實例屬性

    通過三種方式可以啟動該功能。

    • 在 Pydev 透視圖中,從菜單欄中選擇 Pydev -> Globals Browser。
    圖 9. 菜單欄啟動 Globals Browser
    • 在Pydev 透視圖中,工具欄有如下的一個小圖標,鼠標移至該圖標上方,顯示 ”Pydev: Globals Browser” 標注。點擊該圖標按鈕,可以啟動 Globals Browser 功能。
    圖 10. 工具欄啟動 Globals Browser
    • 通過快捷鍵 Ctrl + Shift + T,可以快速啟動 Globals Browser 功能。

    在 Filter 中輸入所要查詢的定義、變量或者屬性,Globals Browser 可以快速地定位到相應的代碼段。

    圖 11. Globals Browser
  • Hierarchy View
  • 當某個 python 文件包含多個類時,如何才能簡單直觀地了解各個類之間的依存關系?Hierarchy View 提供了這樣的功能,它能將多個類之間的層次關系以樹狀結構直觀地顯示出來。

    以一段 Python 代碼為例,定義了 Super1, Super2, ToAnalyze 和 Sub1 四個類。在 Pydev透視圖中,選擇 Windows -> Show View -> Other,在彈出的 Show View 窗口中,選擇 Pydev -> Hierarchy View。按快捷鍵 F4 激活 Hierarchy View,可以看到樹狀圖中顯示出了類間的層次關系。

    圖 12. 在 Hierarchy View 中顯示類的層次關系

    Hierarchy View 還支持以下四個功能:

    • 在層次圖中,用鼠標單擊某個類,圖下方即顯示出該類的方法。
    • 如果雙擊某個類、方法或者屬性,則會調出源程序,進入對該類、方法或者屬性的編輯狀態。
    • 在 Hierarchy View 中,按住鼠標右鍵,并相左或向右移動鼠標,層次圖則會相應地縮小或放大。
    • 在 Hierarchy View 中,按住鼠標左鍵移動鼠標,層次圖則會被隨意拖動到相應的位置。

    運行和調試

    運行程序

    要運行 Python 源程序,有兩種方法可供選擇。下面以一段代碼 example.py 為例介紹這兩種運行方式。

    • 在 Pydev Package Explorer 中雙擊 example.py,選擇 Run -> Run As -> Python Run。程序example.py 立即被運行,在控制臺 Console 里顯示出程序的執行結果。
    圖 13. Python 程序及運行結果
    • 在 Pydev Package Explorer 中,用鼠標右鍵單擊 example.py,在彈出的菜單欄中選擇 Run As -> Python Run。同樣,example.py 被執行,Console 中顯示程序的執行結果。

    以上兩種方式是運行源程序的基本方法。Pydev 還提供一種特有的源程序運行功能 Run As Python Coverage,該功能不僅能顯示出程序的運行結果,而且能將程序運行過程中代碼的覆蓋率顯示出來。

    要查看代碼的覆蓋率,首先需要打開 Code Coverage Results View。在 Pydev 透視圖中,選擇 Windows -> Show View -> Code Coverage Results View。在彈出視圖的左欄中,可以看到三個按鈕,”Choose dir!”, “Clear coverage information!” 和 ”Refresh Coverage infomation”。

    圖 14. Code Coverage Results View

    用鼠標左鍵單擊 ”Choose dir!”,在彈出的 Folder Selection 窗口中選擇需要運行的程序所在的包,單擊 Ok。這樣,這個包中所有的源程序便顯示在左欄中。

    接下來,仍以 example.py 為例,看看 Run As Python Coverage 功能展現出的結果。選擇Run As -> Python Coverage,控制臺 Console 中顯示出了程序的運行結果。切換到剛才打開的 Code Coverage Results View 視圖,單擊左欄中的 example.py。

    圖 15. 在 Code Coverage Results View 中顯示代碼覆蓋率

    代碼運行過程中的覆蓋情況很清楚地顯示在右欄中。

    雙擊左欄中的 example.py,沒有覆蓋到的代碼便在編輯器中以醒目的錯誤標志被標注出來。

    圖 16. 以錯誤標志顯示沒有被覆蓋到的代碼

    如果關閉 Code Coverage Results View 視圖,代碼的覆蓋信息并沒有丟失,重新打開該視圖同樣可以顯示出這些信息。只有通過單擊左欄的 “Clear coverage information!” 按鈕,才可以清除程序運行后得到的這些覆蓋信息。

    調試程序

    調試是程序開發過程中必不可少的,熟練掌握調試技能是開發者進行高效開發的前提和基礎。下面仍以 example.py 為例,介紹如何使用 Pydev 的調試功能。

    調試需從添加斷點開始,有三種方式可以設置斷點。

    • 雙擊編輯器中標尺欄左邊灰白的空白欄,在某行添加斷點。
    圖 17. 雙擊標尺欄左邊灰白的空白欄添加斷點
    • 鼠標右鍵單擊標尺欄,在彈出的菜單欄中選擇 ”Add Breakpoint” 添加斷點。
    圖 18. 右鍵單擊標尺欄添加斷點
    • 將鼠標移至需要添加斷點的代碼行,使用快捷鍵 Ctrl+F10,在彈出的菜單欄中選擇 ”Add Breakpoint” 添加斷點。

    添加好斷點后,選擇 Debug As -> Python Run 啟動調試器,彈出一個對話框,詢問是否切換到調試器透視圖,單擊 Yes,即顯示調試模式。

    圖 19. 調試器透視圖

    程序調試過程中,常用的幾個快捷鍵如下:

    • 單步跳入 Step Into: F5
    • 單步跳過 Step Over: F6
    • 單步返回 Step Return: F7
    • 重新開始 Resume: F8

    在控制臺 Console 中,顯示出斷點之前代碼的執行結果。如果要查看某個變量的值,以變量 a 為例,可以手動在控制臺中鍵入一行代碼 ”print ‘a is:’, a”,再連續按兩次 Enter 鍵,即顯示出變量的值。

    圖 20. 控制臺顯示變量值

    在調試模式下,要查看表達式的值,選中后單擊鼠標右鍵,選擇 Watch。彈出 Expression面板,顯示出了相應的變量或表達式的值。

    圖 21. Expression 面板中顯示表達式值

    如果想要在滿足一定條件下已經添加的斷點才有效,可以設置斷點的屬性。在編輯器的標尺欄中單擊鼠標右鍵,彈出的菜單欄中選擇 Breakpoint Properties。在顯示的窗口中,選中復選框 ”Enable Condition”,輸入需要滿足的條件,單擊 Ok。

    圖 22. 設置斷點屬性

    這樣,當重新執行程序調試的時候,只有滿足條件的情況下,該斷點才有效。

    總結

    Pydev 結合 Ecplise 實現了如此功能強大且易用的 Python IDE,本文不能一應俱全地介紹出來,對于一些基本的功能沒有做過于詳盡的介紹,主要突出 Pydev 特有的一些功能。Pydev for Eclipse 的出現為 Python 開發人員實現高效的項目開發提供了很好的條件,該項目也在不斷的發展之中,其功能將會越來越強大。




    總結

    以上是生活随笔為你收集整理的PyDev的使用-高效Py编程的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。