速学python·注释

注释是什么

           在编程中,注释是用于解释代码的功能、用途或实现细节的文字说明

           注释对于代码的可读性和可维护性非常重要,因为它们可以帮助其他开发人员(或未来的自己)理解代码的工作原理和设计意图。

           注释在代码中以特定的语法标记,通常不会被编译器执行。根据编程语言的规范,注释可以有不同的形式。例如,在C和C++中,注释以“/”开始并以“/”结束;在Python中,注释以“#”符号开始

           例如:

# 用来判断变量的类型和更改变量的类型
# 定义一个初始化变量
a = 0
# 检测出这个初始化变量是什么类型?
print(type(a))
# 改变这个变量的类型
a = '0' 
# 检测出这个初始化变量是什么类型?
print(type(a))

他并不会影响代码的运行,只是批注作用 ,可以提高可读性等

    作用        

  1. 提供有关代码的背景信息:注释可以解释代码的用途、设计思路或历史背景。
  2. 解释复杂或难以理解的代码段:对于难以理解的代码段,注释可以提供额外的上下文或解释其工作原理。
  3. 记录代码更改:注释可以记录代码的修改历史、原因和日期,这对于跟踪代码的演变和了解代码库的状态非常有用。
  4. 指导其他开发者:注释可以作为开发指南,指导其他开发者如何使用或修改代码。

 注释的语法

        在Python中,注释的语法有两种方式:

单行注释:使用井号(#)开头,后面跟着注释内容。例如:

# 这是一个单行注释  
print("这是一个单行注释")

多行注释:使用三引号(""")或三单引号(''')包裹注释内容。例如:

"""  
这是一个多行注释的例子。  
可以在多行注释中编写任意的内容。  
"""  
print("这是一个多行注释的例子")

       注意:不要把注释写到要注释的代码的下面,也不要写到要注释的代码的左边

注释的规范

     主要有以下几点  :

  1. 清晰简洁:注释应该清晰、简洁地说明代码的功能和意图。避免冗长和复杂的注释,尽量保持注释的长度适中。
  2. 解释代码逻辑:注释应该解释代码的逻辑和实现细节,帮助读者理解代码是如何工作的。
  3. 避免不必要的注释:不要为了注释而注释,只有在必要时才添加注释。避免重复编写代码的注释,因为这会使代码变得难以阅读和维护。
  4. 注释风格一致:在整个代码库中保持一致的注释风格。例如,选择单行注释还是多行注释,使用井号(#)还是三引号(""")或三单引号('''),都应该保持一致。
  5. 适当使用中文注释:如果项目需要多人协作,建议适当使用中文注释,以便团队成员更好地理解代码。同时,也要注意保持注释的清晰和简洁。
  6. 注释与代码同步:当代码发生变化时,相关的注释也应该进行相应的更新,保持注释与代码的同步。
  7. 使用文档字符串(docstrings):对于复杂的函数、类或模块,建议使用文档字符串来提供详细的说明和文档。文档字符串应该清晰地描述函数、类或模块的用途、参数、返回值和异常处理等信息。
  8. 要文明注释: 不要弄乱七八糟带有负能量的注释.

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/600134.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode:3. 无重复字符的最长子串

一、题目 二、函数原型 int lengthOfLongestSubstring(char* s) 三、思路 本题就是找最长的无重复字符子串。 两层循环,外层循环控制字串的起始位置,内层循环控制字串的长度。 设置一个长度为256且初始为0的hash表(因为一共有256个字符…

vue 微信扫码登录

1、首先引入wxLogin.js 下载地址&#xff1a;https://download.csdn.net/download/weixin_44037153/88703768 import WxLogin from ../js/wxLogin.js2、使用方法 在页面内创建id <div id"login_container"></div>引用方法 new WxLogin({id: "log…

安卓拍照扫描APP解决方案——基于深度学习的文本方向检测与校正

简介 在OCR&#xff08;光学字符识别&#xff09;系统中&#xff0c;为了提高OCR系统的性能&#xff0c;确保准确识别文本内容。图像预处理是一个关键的组成部分。其中&#xff0c;一个重要的任务是矫正文本方向。例如&#xff0c;在进行文字识别时&#xff0c;不仅需要有效地…

数据结构和算法-插入排序(算法效率 折半优化 顺序表与链表插入排序 代码实现)

文章目录 插入排序算法实现算法效率分析优化-折半插入排序代码实现对链表进行插入排序小结 插入排序 首先49当作第一个已经排好序得元素&#xff0c;将第二个元素与前面得元素对比&#xff0c;发现小于49&#xff0c;于是49移动位置 此时将65与之前元素对比&#xff0c;发现其…

【KingbaseES】实现MySql函数TEXT_EQUAL

TEXT_EQUAL CREATE OR REPLACE FUNCTION text_equal_ci(text_value1 text, text_value2 text) RETURNS boolean AS $$ BEGIN RETURN (lower(text_value1) lower(text_value2)); END; $$ LANGUAGE plpgsql IMMUTABLE;

苦学golang半年,写了一款web服务器

苦学golang半年&#xff0c;写了一款web服务器 文章目录 苦学golang半年&#xff0c;写了一款web服务器example 项目地址&#xff1a;https://github.com/fengyuan-liang/jet-web-fasthttp 苦学golang半年&#xff0c;写了一款web服务器&#xff0c;里面包含笔者各种工程实践&a…

深度学习中的准确率、精确率(查准率)、召回率(查全率)、F1值、ROC曲线的AUC值,

混淆矩阵 其中关于 TP, TN; FP, FN 的解释&#xff1b; 其中首字母 T&#xff0c;F代表预测的情况&#xff0c;即T代表预测的结果是对的&#xff0c; F代表预测的结果是错误的&#xff1b; 第二个字母代表预测是预测为 正样本&#xff0c;还是负样本&#xff0c; Positve 代表…

ARCGIS PRO SDK GeometryEngine.Intersection的GeometryDimensionType 枚举

描述几何对象的维度。与 GeometryEngine.Intersection 一起使用。 ​ 成员描述EsriGeometry0Dimension零维&#xff08;点或多点&#xff09;。EsriGeometry1Dimension一维&#xff08;折线&#xff09;。EsriGeometry2Dimension二维&#xff08;多边形或包络&#xff09;。Es…

第11章 GUI Page462~476 步骤二十三 步骤二十四 Undo/Redo ②“添加操作”支持“Undo/Redo”

工程二 1.为AddAction类添加Undo() Redo() GetName()成员函数 2.实现AddAction类的Undo() Redo()函数 3.运行效果&#xff0c;但是日志窗口没有记录 原因&#xff1a;AddAction(EditAction* newAction)函数没有实现&#xff0c;另外参数是EditAction类型 所以我们还需要在基…

线性代数 --- 为什么LU分解中的下三角矩阵L的主对角线上都是1?

为什么LU分解中的下三角矩阵L的主对角线上都是1? 一方面&#xff0c;对于LU分解而言&#xff0c;下三角阵L是对高斯消元过程的记录&#xff0c;是高斯消元的逆过程&#xff0c;是多个消元矩阵E的逆矩阵的乘积(形如下图中的下三角矩阵)&#xff0c;即&#xff1a; 另一方面&…

OSG显示模型的线程问题

做如下一段代码; #include <Windows.h> #include <osgViewer/Viewer>#include <osg/Node> #include <osg/Geode> #include <osg/Group>#include <osgDB/ReadFile> #include <osgDB/WriteFile>#include <osgUtil/Optimizer>i…

基于OpenCV的图像平移

基本概念 图像的平移操作是将图像的所有像素坐标进行水平或者垂直方向的移动&#xff0c;也就是所有像素点按照给定的偏移量在水平方向上沿X轴&#xff0c;垂直方向上沿y轴移动。 设原始图像像素点为&#xff08;x0,y0&#xff09;&#xff0c;平移后的图像的像素点为(x,y),x…

Unity游戏内相机(主角头部视角)的旋转问题:“万向节锁定”(Gimbal Lock)

前言&#xff1a; 在Unity中&#xff0c;相机的正前方是Z正半轴&#xff0c;相机的正右方是X正半轴&#xff0c;相机的正上方是Y正半轴。这个很好理解。 现在&#xff0c;我想要相机看向左前上方45&#xff0c;你会觉得要怎么做呢&#xff1f; 如果是我的话&#xff0c;我的第一…

文心一言实战大全

"文心一言"是一个基于人工智能的写作助手&#xff0c;它可以帮助用户生成各种类型的文本。以下是一些使用"文心一言"的实战示例&#xff1a; 写博文 如果你是一个博客作者&#xff0c;你可以使用"文心一言"来帮助你生成博文。只需输入你的主题或…

区块链智能合约测试框架Foundry技术指南

在区块链开发领域,智能合约的安全性和可靠性至关重要。鉴于区块链的不可变性,智能合约中的任何错误都可能导致不可逆转的后果,包括重大的财务损失。这凸显了彻底测试的关键重要性。Foundry 是一种 Solidity 测试框架,在这一领域中成为一个强大的工具,为开发人员提供了严格…

Golang如何解决重复提交并发问题

Golang如何解决重复提交并发问题 前言一 .前端防止重复点击二 .后端防止重复插入三. 数据库约束四 通过事物db.Transaction进行处理五 redies防重复点击 前言 在实际开发中&#xff0c;有很多情况出现&#xff0c;其中用户重复提交或多个用户同时操作点击同一个server服务提交…

FreeRTOS移植

目录 一、FreeRTOS简介1.1 初识FreeRTOS1.2 FreeRTOS资料获取1.3 开发环境简介 二、FreeRTOS移植2.1 文件添加2.2 keil工程添加2.3 文件修改 一、FreeRTOS简介 1.1 初识FreeRTOS 首先看一下 FreeRTOS 的名字&#xff0c;可以分为两部分&#xff1a;“Free”和“RTOS”&#xf…

MySQL基础篇(三)约束

一、概述 概念&#xff1a;约束是作用于表中字段上的规则&#xff0c;用于限制存储在表中的数据。 目的&#xff1a;保证数据库中数据的正确、有效性和完整性。 分类&#xff1a; 注意&#xff1a;约束是作用于表中字段上的&#xff0c;可以在创建表/修改表的时候添加约束。 二…

智能分析网关V4太阳能风光互补远程视频智能监控方案

一、背景需求 在一些偏远地区&#xff0c;也具有视频监控的需求。但是这类场景中&#xff0c;一般无法就近获取市电&#xff0c;如果要长距离拉取市电&#xff0c;建设的成本非常高且长距离传输有安全隐患&#xff0c;因此风光互补远程视频监控方案的需求也较多。利用风光电转化…

MyBatisPlus学习二:常用注解、条件构造器、自定义sql

常用注解 基本约定 MybatisPlus通过扫描实体类&#xff0c;并基于反射获取实体类信息作为数据库表信息。可以理解为在继承BaseMapper 要指定对应的泛型 public interface UserMapper extends BaseMapper<User> 实体类中&#xff0c;类名驼峰转下划线作为表名、名为id的…