我在Spyder IDE中搜索了有关工作空间和项目的基本教程。我想要了解的是如何使用工作区和项目来组织我的代码的基本概念。看起来这可能是基本的编程技巧,这也是我找到任何概述的问题的原因。 This page似乎是相关的,但实际上是关于Eclipse而且相当稀疏。 Pythonxy教程和documentation for Spyder没有详细说明。 Anaconda文档也没有。
我的问题是:
我应该何时设置新工作区(如果有的话)?
何时创建新项目?
PYTHONPATH如何依赖于我的工作区和项目设置?它在所有情况下都是相同的,还是可以按工作区/项目自定义它?
除了我应该配置的PYTHONPATH之外还有其他设置吗?
Spyder上面的答案有多具体?对于其他IDE,如Eclipse,它会是一样的吗?
我在64位Windows 7上运行Spyder,作为Anaconda软件包的一部分。
答案 0 :(得分:7)
根据我的经验,在Spyder中设置工作区并不总是必要的。 工作区是计算机上用于创建和保存所有文件的空间。工作区通常有助于管理项目文件。 在Spyder中创建工作区后,会出现一个名为" Project Explorer"在Spyder内部打开。在那里,您可以实时查看项目的文件。例如,如果使用Python生成文件,它将显示在该窗格中。 该窗格允许您保存文件的组织,过滤它们等。这对于Web开发非常有用,例如,因为它可以帮助您保持内容的有序性。 我使用Python来处理文件(例如csv)并使用数据(数据分析),我发现在工作区功能中没有用处。 此外,如果在“项目浏览器”窗格中删除文件,则无法在Windows回收站中找到该文件。
答案 1 :(得分:7)
2016年10月更新:Spyder 3现在的项目设施类似于其他IDE(尤其是Rstudio)。
现在,如果您有一个包含脚本的文件夹,则可以转到
Projects > New Projects > Existing Directory
导入它。所选目录将被设置为项目的基本目录。
答案 2 :(得分:6)
我使用spyder进行数据分析,我刚刚开始使用项目工作区。我相信它允许您根据组织编写更好的代码。正如之前的帖子所说的那样,这可能有助于网络开发"这是正确的,因为网络开发需要良好的软件工程,因为文件的复杂性以及它们如何相互交互。该组织/结构也可用于数据分析。
通常,使用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,但这似乎在开发时增加了更大的灵活性。
所以你应该什么时候这样做?我认为这总是一个好主意,我刚开始使用这个设置,我永远不会回去!
答案 3 :(得分:5)
Spyder文档中似乎缺少的一条重要信息是如何创建新工作区。安装Spyder后没有工作空间时,创建第一个项目会自动启动工作空间的创建(至少在Anaconda 3发行版中)。但是,当工作空间已存在时,如何创建新工作区并不明显。
这是我找到的创建新工作区的唯一方法:
(1)在Spyder中选择 Project explorer 窗口。如果此窗口或标签未显示在Spyder应用程序中的任何位置,请使用查看>窗格> Project explorer 以启用窗口。
(2)单击 Project explorer 窗口右上角的文件夹图标。此图标将显示一个可以创建新工作区的对话框。该对话框允许选择.spyderworkspace
文件的目录。