zoukankan      html  css  js  c++  java
  • python 中的内置类属性__name__和__doc__

    __doc__

    __doc__为模块字符串,模块字符串写在Python文件的第一行,三个引号包含起来的字符串。

    为什么要写文档字符串?

    因为规范的书写文档字符串可以通过sphinx等工具自动生成文档。

    文档字符串的风格有很多。

    • Plain

      • # Plain
        def foo1(a, b):
            """
        
            """
            return a+b
        
    • Epytext

      • # Epytext
        def foo(a, b):
            """
            @param a:
            @param b:
            @return:
            """
            return a+b
        
    • reStucturedText

      • # reStructuredText
        def foo2(a, b):
            """
            :param a:
            :param b:
            :return:
            """
            return a+b
        
    • Numpy

      • # Numpy
        def foo3(a, b):
            """
            Parameters
            ----------
            a
            b
        
            Returns
            -------
        
            """
        
    • Google

      • # Google
        def foo4(a, b):
            """
            Args:
                a:
                b:
        
            Returns:
        
            """
            return a + b
        
    • Pycharm 设置

      • settings->Tools->python integrated tools ->Docstrings->Docstring format

    __name__

    • __name__ 是属于 python 中的内置类属性,代表对应程序名称。
    • 当__name__在当前执行的文件中使用时,它的值为__main__;但是当__name__在被调用的模块中时,其值为被调用文件所在的路径。
    • __name__的实际应用
      • 我们在写程序时,经常是功能模块和业务逻辑模块分离,在写功能函数时,经常要进行调试函数是否正常,那么此时我们可以直接在功能模块最下面加上

        if __name__ == '__main__':
            # 需要调试的内容
            pass
        

        这样就可以在下方直接来测试函数的功能了。
        同时在其他模块来调用这些函数时,由于此时if语句不成立,所以此时将不会执行下面的代码块,也就是说在你在调用其他模块时,被调用的模块下方的if函数将不会被执行从而不会影响整个程序的正常使用。

      • 总而言之:方便程序进行测试。

  • 相关阅读:
    javascript 延迟
    ashx获取另一个页面的返回内容
    Handler实现数据模板
    font-face 在 Firefox无法正常工作问题
    离线缓存 manifest
    事件 event
    源码学习
    调试
    Icon font font face
    aria-label
  • 原文地址:https://www.cnblogs.com/wenshinlee/p/12665089.html
Copyright © 2011-2022 走看看