2

在使用脚本语言(Python、Perl、Ruby 或 R)进行编程时,我尝试编写函数并将它们保存在单独的文件中,以保持我的代码模块化。

对于调试,我经常将函数的参数放在函数体中,并在完成后立即取消注释。

此外,我经常在函数定义之后立即调用该函数,当我完成测试时我也会取消注释。

所以最后,我的文件看起来像这样

def add(a, b):
    # a = 1
    # b = 2
    c = a + b
    return c

# add(1, 2)

有没有更优雅的方法来实现这一点?

此外,我认为通常的做法是在将代码发送给其他人时删除这些注释。有没有办法以类似 JavaDoc 的方式实现这一点,同时保留“真实”注释(即不是未注释的代码)?

我应该提到,我经常围绕调用 Matplotlib 或 R(ggplot 等)中的绘图函数编写包装函数,因为在这些情况下输出是一个图形,它不太适合测试驱动的开发框架。

4

1 回答 1

0

正确的方法是编写一些单元测试。
如果您想让您的测试非常接近源代码,您应该查看doctest模块,它允许您运行直接放置在 doc 注释中的测试。
整洁的东西。
编辑: 在你的例子中,它看起来像这样:

def add(a, b): 
    """ Returns sum of a and b

    >>> add(1, 2)
    3

    """
    c = a + b
    return c

并像这样运行测试:

python -m doctest -v yourFile.py
于 2018-06-04T17:27:57.970 回答