2015-12-29 43 views
1

如何在运行脚本之前检测是否已在Python脚本中初始化所有变量?理想情况下,我希望我的编译器(当前Wing IDE)检测错误,作为构建/编译过程的一部分。这是为了防止由于简单的错误导致加载数据等~30分钟后程序崩溃。在运行脚本之前查找未初始化的变量

我知道Python可以用各种方式操作变量。但是,我的脚本通常很简单,我不认为这种方法是防弹的。

作为示例,我希望使用错误检测方法来查找简单错误,例如下面的脚本中grocery_bill的拼写错误。

prices = {'apple': 0.40, 'banana': 0.50} 
my_purchase = { 
    'apple': 1, 
    'banana': 6} 
grocery_bill = sum(prices[fruit] * my_purchase[fruit] 
        for fruit in my_purchase) 
print 'I owe the grocer $%.2f' % grocery_blil 
+0

Wing IDE不是已经做到了吗? – Untitled123

+0

或许。我一直无法找到这样做的选项。 – pir

+0

它不只是崩溃,并告诉你线路错误,当你这样做? – Untitled123

回答

2

我现在可以想到两个选项。

  1. PyLint

这个工具可以分析你的所有的源代码,并尝试检测其中的错误可能会发生的地方。这应该检测到你提到的那些东西。

  • PyCharm
  • 这是Jetbrains的一个IDE,你可以打开拼写检查所有的变量。虽然这并不能阻止错别字的发生,但它确实使捕捉它们变得容易得多。

    如果你是学生,你可以免费获得完整版本的PyCharm。

    +1

    我发现Wing IDE与PyLint集成在一起:http://www.wingware.com/doc/edit/pylint – pir

    +0

    是的,现在PyLint工具是这样做的方式(通常在配置它不显示许多不太有用的消息之后)。我们将尝试添加在编辑器上即时显示。这背后的历史是我们更多地关注测试驱动和调试器驱动的开发,而不是像前期类似编译器的行为。但显然这是一个应该添加的功能。 – Wingware

    +0

    哇........... – Untitled123