这样写python注释让代码更加的优雅

 更新时间:2021年06月02日 09:17:11   作者:autofelix  
任何编程语言都少不了注释,Python当然也不例外,下面这篇文章主要给大家介绍了关于如何写python注释,才能让你的代码更加的优雅,需要的朋友可以参考下

python这样注释,让你的代码看起来更加的优雅,是不是常常感觉自己的python代码写出来,看起来特别的乱,虽然可以正常运行,但是在优雅性上似乎欠缺的很多,这篇文章主要教你,如何让你的python代码看起来更加的优雅与美观,

一、注释欣赏

这里有一段飞兔小哥哥自己常写的注释模版

这里主要分为表头注释、类注释、欢迎语以及方法注释

表头注释会标注这个项目的名称、文件名、项目作者、时间等基础信息

类注释会标注这个类主要用来做什么的

而方法注释则表示当前方法的作用

​​#!/usr/bin/env python
# encoding: utf-8
'''
#-------------------------------------------------------------------
#                   CONFIDENTIAL --- CUSTOM STUDIOS
#-------------------------------------------------------------------
#
#                   @Project Name : the desc of project
#
#                   @File Name    : main.py
#
#                   @Programmer   : autofelix
#
#                   @Start Date   : 2021/06/01 12:42
#
#                   @Last Update  : 2021/06/01 12:42
#
#-------------------------------------------------------------------
'''
import requests, os, platform, time
from Crypto.Cipher import AES
import multiprocessing
from retrying import retry
 
class M3u8:
    '''
     This is a main Class, the file contains all documents.
     One document contains paragraphs that have several sentences
     It loads the original file and converts the original file to new content
     Then the new content will be saved by this class
    '''
    def __init__(self):
        '''
        Initial the custom file by self
        '''
        self.encrypt = False
 
    def hello(self):
        '''
        This is a welcome speech
        :return: self
        '''
        print("*" * 50)
        print(' ' * 15 + 'm3u8链接下载小助手')
        print(' ' * 5 + '作者: autofelix  Date: 2021-06-01 12:42')
        print(' ' * 10 + '适用于非加密 | 加密链接')
        print("*" * 50)
        return self
 
    def run(self):
        pass
 
if __name__ == '__main__':
    M3u8().hello().run()

附:python函数注释规范

首先来两段优秀开源框架的代码注释

例1 tornado.web.RequestHandler的get_arguments函数.

 def get_argument(self, name, default=_ARG_DEFAULT, strip=True):
        """Returns the value of the argument with the given name.

        If default is not provided, the argument is considered to be
        required, and we raise a `MissingArgumentError` if it is missing.

        If the argument appears in the url more than once, we return the
        last value.

        The returned value is always unicode.
        """
        return self._get_argument(name, default, self.request.arguments, strip)

例2 requests的get函数

def get(url, params=None, **kwargs):
    """Sends a GET request.

    :param url: URL for the new :class:`Request` object.
    :param params: (optional) Dictionary or bytes to be sent in the query string for the :class:`Request`.
    :param \*\*kwargs: Optional arguments that ``request`` takes.
    :return: :class:`Response <Response>` object
    :rtype: requests.Response
    """

    kwargs.setdefault('allow_redirects', True)
    return request('get', url, params=params, **kwargs)

对比下例1和例2, tornado框架的函数倾向与给出函数的用途说明,而不提供具体的输入参数说明,并且相对来说函数名字也是浅显易懂,而requests库看起来比较简洁一点,具体的输入和输出都给的很完整,看起来很是赏心悦目,所以我个人更偏向于例2的注释,当然,也有将例1和例2注释特点结合起来的库,比如tensorflow库,因为涉及的输入参数以及函数较为复杂,因此输入参数和函数原理有较为详尽的说明。总之,大部分编写函数的时候参考例2的注释方式,代码也看起来较为优雅,而遇到比较复杂的情况,则可以参考例1加上必要的函数详细说明。

总结

到此这篇关于python注释的文章就介绍到这了,更多相关python注释内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现npy/mat文件的保存与读取

    Python实现npy/mat文件的保存与读取

    除了常用的csv文件和excel文件之外,我们还可以通过Python把数据保存文npy文件格式和mat文件格式。本文为大家展示了实现npy文件与mat文件的保存与读取的示例代码,需要的可以参考一下
    2022-04-04
  • Python数据分析之pandas比较操作

    Python数据分析之pandas比较操作

    比较操作是很简单的基础知识,不过Pandas中的比较操作有一些特殊的点,本文介绍的非常详细,对正在学习python的小伙伴们很有帮助.需要的朋友可以参考下
    2021-05-05
  • pip search报错问题及解决

    pip search报错问题及解决

    这篇文章主要介绍了pip search报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 如何基于Python制作有道翻译小工具

    如何基于Python制作有道翻译小工具

    这篇文章主要介绍了如何基于Python制作有道翻译小工具,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Python学习之私有函数,私有变量及封装详解

    Python学习之私有函数,私有变量及封装详解

    私有函数与私有变量中的私有就是独自拥有、不公开、不分享的意思。放到函数与变量中就是独自拥有的函数与独自拥有的变量,并且不公开。本文将通过示例详细讲解Python中的私有函数、私有变量及封装,感兴趣的可以学习一下
    2022-03-03
  • pandas DataFrame truediv的具体使用

    pandas DataFrame truediv的具体使用

    本文主要介绍了pandas DataFrame truediv的具体使用,该方法用于执行逐元素的真除法操作,下面就来具体介绍一下,感兴趣的可以了解一下
    2025-04-04
  • Windows下Python的Django框架环境部署及应用编写入门

    Windows下Python的Django框架环境部署及应用编写入门

    这篇文章主要介绍了Windows下Python的Django框架环境部署及程序编写入门,Django在Python的框架中算是一个重量级的MVC框架,本文将从程序部署开始讲到hellow world web应用的编写,需要的朋友可以参考下
    2016-03-03
  • pycharm2020上部署配置AutoGPT4.0(保姆级教程)

    pycharm2020上部署配置AutoGPT4.0(保姆级教程)

    本文主要介绍了pycharm2020上部署配置AutoGPT4.0,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • Python使用Streamlit快速构建一个数据应用程序

    Python使用Streamlit快速构建一个数据应用程序

    Streamlit是一个开源的Python库,它允许数据科学家和开发人员快速创建和分享数据应用程序,而无需具备复杂的Web开发经验,本文将介绍Streamlit的基本用法,并通过一个实际案例展示如何快速构建一个简单的数据应用程序,需要的朋友可以参考下
    2025-03-03
  • 使用Python实现解析HTML的方法总结

    使用Python实现解析HTML的方法总结

    HTML(Hypertext Markup Language)是互联网世界中的通用语言,用于构建网页,本文主要为大家介绍了如何使用Python解析HTML,包括各种方法和示例代码,希望对大家有所帮助
    2023-11-11

最新评论