有没有一个工具可以帮助程序员避免Python命名错误?

有没有一个工具可以帮助程序员避免Python命名错误?,python,nameerror,Python,Nameerror,我不是以英语为母语的人。当我使用Python编写代码时,我经常会犯拼写错误,并出现异常。单元测试可以解决一些问题,但不是全部。因为人们很难构建覆盖所有逻辑的测试用例。所以我认为一个能够检测这些错误的工具会对我有很大帮助,但我搜索了谷歌,却找不到它 我相信通过静态分析器(例如)测试代码会有很大帮助 另一个提示:您可以使用具有智能自动完成功能的奇特IDE,这将减少此类错误的数量。我相信通过静态分析器(例如)测试代码将有很大帮助 另一个提示:您可以使用具有智能自动完成功能的奇特IDE,这将减少此类错误

我不是以英语为母语的人。当我使用Python编写代码时,我经常会犯拼写错误,并出现异常。单元测试可以解决一些问题,但不是全部。因为人们很难构建覆盖所有逻辑的测试用例。所以我认为一个能够检测这些错误的工具会对我有很大帮助,但我搜索了谷歌,却找不到它

我相信通过静态分析器(例如)测试代码会有很大帮助


另一个提示:您可以使用具有智能自动完成功能的奇特IDE,这将减少此类错误的数量。

我相信通过静态分析器(例如)测试代码将有很大帮助


另一个提示:您可以使用具有智能自动完成功能的奇特IDE,这将减少此类错误的数量。

pylint可以在这里提供帮助。它将把这些地点报告为:

E: 2,6: Undefined variable "foo" 

例如。

pylint可以在这里提供帮助。它将把这些地点报告为:

E: 2,6: Undefined variable "foo" 

例如。

您可以获得一个IDE,它可以帮助自动完成名称,尽管不是在所有情况下都可以。PyDev就是这样一个具有自动完成功能的IDE;PyCharm是另一个(不是免费的)


从长远来看,使用autocomplete可能是解决问题的最佳选择。即使你找到了一个试图纠正这些拼写错误的工具,这也不能解决最初的问题,而且可能只会导致新的问题。

你可以得到一个IDE,它可以帮助自动完成名称,尽管不是在所有情况下都是如此。PyDev就是这样一个具有自动完成功能的IDE;PyCharm是另一个(不是免费的)


从长远来看,使用autocomplete可能是解决问题的最佳选择。即使您找到了一个试图纠正此类拼写错误的工具,这也不会解决最初的问题,可能只会导致新的问题。

我更喜欢
eclipse
pydev
集成,用于
python
开发项目

它将解决您的目的,并在您运行程序之前以红色显示错误。但它要求您的项目在eclipse下正确配置,如下所示:

  • 在将PyDev与eclipse集成后配置Python解释器
  • 创建/导入项目&设置为python-pydev项目
  • 配置源文件夹(向eclipse提供在整个项目树下哪些文件夹包含python源代码的信息)
现在,您已经完成了常规python编程设置&设置

此外,您还可以将Eclipse/Pydev项目与
pylint
集成,如
BasicWolf
所述,它可以在编写代码时随时检查代码质量和bug

参考资料:




我更喜欢
eclipse
pydev
集成,用于
python
开发项目

它将解决您的目的,并在您运行程序之前以红色显示错误。但它要求您的项目在eclipse下正确配置,如下所示:

  • 在将PyDev与eclipse集成后配置Python解释器
  • 创建/导入项目&设置为python-pydev项目
  • 配置源文件夹(向eclipse提供在整个项目树下哪些文件夹包含python源代码的信息)
现在,您已经完成了常规python编程设置&设置

此外,您还可以将Eclipse/Pydev项目与
pylint
集成,如
BasicWolf
所述,它可以在编写代码时随时检查代码质量和bug

参考资料:




“因为人们很难构建涵盖所有逻辑的测试用例。”-为什么不呢?100%的测试覆盖率是可行的。未测试的代码在@Maulwurfn的+1处被破坏。Python是一种特殊的语言,您可能需要在测试中调用每一个例程。否则,如果您正在使用的模块更改了任何名称,您的用户很可能首先受到严重的破坏。“因为很难构建涵盖所有逻辑的测试用例。”-为什么不?100%的测试覆盖率是可行的。未测试的代码在@Maulwurfn的+1处被破坏。Python是一种特殊的语言,您可能需要在测试中调用每一个例程。否则,如果您正在使用的模块更改了任何名称,您的用户很可能首先受到损坏的严重影响。