簡體   English   中英

設置Spyder工作區和項目的基礎知識

[英]Basics of setting up a Spyder workspace and projects

我在Spyder IDE中搜索了有關工作空間和項目的基本教程。 我想要了解的是如何使用工作區和項目來組織我的代碼的基本概念。 看起來這可能是基本的編程技巧,這也是我找到任何概述的問題的原因。 這個頁面似乎是相關的,但實際上是關於Eclipse而且非常稀疏。 Python的教程和Spyder文檔沒有詳細說明。 Anaconda文檔也沒有。

我的問題是:

我什么時候應該設置一個新工作區(如果有的話)?

我什么時候創建一個新項目?

PYTHONPATH如何依賴於我的工作區和項目設置? 它在所有情況下都是相同的,還是可以按工作區/項目自定義?

除了我應該配置的PYTHONPATH之外還有其他設置嗎?

Spyder上面的答案有多具體? 對於其他IDE,如Eclipse,它會是一樣的嗎?

我在64位Windows 7上運行Spyder,作為Anaconda軟件包的一部分。

根據我的經驗,在Spyder中設置工作區並不總是必要的。 工作區是計算機上用於創建和保存所有文件的空間。工作區通常有助於管理項目文件。 在Spyder中創建工作區后,Spyder中會出現一個名為“Project Explorer”的窗格。 在那里,您可以實時查看項目的文件。 例如,如果使用Python生成文件,它將顯示在該窗格中。 該窗格允許您保存文件的組織,過濾它們等。這對於Web開發非常有用,例如,因為它可以幫助您保持組織內容的有序性。 我使用Python來處理文件(例如csv)並使用數據(數據分析),我發現在工作區功能中沒有用處。 此外,如果在“項目瀏覽器”窗格中刪除文件,則無法在Windows回收站中找到該文件。

2016年10月更新: Spyder 3現在具有與其他IDE(尤其是Rstudio)類似的項目設施。

現在,如果你有一個帶腳本的文件夾,你可以去

Projects > New Projects > Existing Directory

導入它。 所選目錄將設置為項目的基本目錄。

我使用spyder進行數據分析,我剛剛開始使用項目工作區。 我相信它允許您根據組織編寫更好的代碼。 正如之前的帖子所說“這對Web開發有幫助”,這是正確的,因為Web開發需要良好的軟件工程,因為文件的復雜性以及它們如何相互交互。 該組織/結構也可用於數據分析。

通常,使用Anaconda的數據分析師具有工程或科學背景,不一定是軟件工程或計算機科學。 這意味着可能缺少良好的軟件工程原則(包括我自己)。 設置工作區確實是我認為在討論中遺漏的一件重要事情。 它將工作空間添加到系統路徑。 設置一個項目,然后嘗試

import sys
print sys.path

您將看到項目的目錄已添加到PYTHONPATH。 這意味着我可以分解我的項目並從我的項目中的不同文件導入函數。 當分析變得復雜或者您想要創建將定期使用的某種類型的較大模型時,這非常有用。 我可以在一個文件中創建所有函數,也可以在另一個文件中創建函數,然后將它們導入到單獨的腳本文件中。

在myScript.py中

from myFunctions import func1
from myFunctions import func2
from myPlots import histPlot

這是一種更清晰的數據分析方法,允許您一次關注一個特定的任務。

在python 3中有%autoreload功能,因此您可以處理您的功能,然后返回到您的腳本文件,如果您發現錯誤,它將每次重新加載它們。 我還沒有嘗試過這個,但我的大部分工作都在2.7,但這似乎在開發時增加了更大的靈活性。

所以你應該什么時候這樣做? 我認為這總是一個好主意,我剛開始使用這個設置,我永遠不會回去!

Spyder文檔中似乎缺少的一條重要信息是如何創建一個新的工作區。 安裝Spyder后沒有工作空間時,創建第一個項目會自動啟動工作空間的創建(至少在Anaconda 3發行版中)。 但是,當工作空間已存在時,如何創建新工作空間並不明顯。

這是我找到的創建新工作區的唯一方法:

(1)在Spyder中選擇Project explorer窗口。 如果此窗口或選項卡未出現在Spyder應用程序中的任何位置,請使用“ 視圖”>“窗格”>“項目瀏覽器”啟用該窗口。

(2)單擊Project explorer窗口右上角的文件夾圖標。 此圖標將顯示一個可以創建新工作區的對話框。 該對話框允許選擇.spyderworkspace文件的目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM