在还没开始学代码前,就要先学会写注释。不会写注释的程序员会遭到鄙视和唾弃,甚至在工作中会被人穿小鞋。注释也不是随便写一下就行,用好注释还是有点讲究的。

注释有什么用?

注释(Comments)主要是向阅读代码的人解释某些代码的作用和功能,它可以出现在代码中的任何位置。Python 在执行代码时会忽略注释,不做任何处理,就好像它不存在一样。注释主要是给人看的,而不是给机器运行的。

举个例子。你写了一段非常厉害的代码,可以让汽车自动驾驶的代码,但是这段代码用了很多复杂的算法,别的人很难看懂,所以你就会在这一段代码中添加注释,解释下代码的意思。 这样,就算别人一时间很难理解代码,也可以通过读注释知道代码做了什么事情。

一般我们会使用 # 号来表示注释,并且在代码上方写注释来说明代码的作用。

# 这段代码实现了自动驾驶功能

# 使用 CNN 算法实现...
do_something_cnn

# 使用傅里叶转换
do_something

注释的最大作用是提高程序的可读性,没有注释的程序对别人来说简直就是噩梦。 我们写完代码以后,可能会有代码审查,如果很难理解,公司可能会打回来,让你重新补齐注释。

还有一种情况,当你半个月以后再来看之前写的代码,可能根本想不起来为什么这么写。有了注释,可以迅速帮你回想之前的实现细节。很多程序员宁愿自己去开发一个应用,也不愿意去修改别人的代码,没有合理的注释是一个重要的原因。

千万不要认为你自己写的代码规范就可以不加注释,这样很容易引起同事之间的相互嫌弃。

注释的表示方法

第一种方式是使用# 号,也就是上面的用法,它只能用来表示某一行是注释,不能表示多行, 如果同时有几行都是注释,就需要每一行前面都添加一个 # 号。

# 第一行注释
# 第二行注释
# 第三行注释
do_something_with_code

另一种方式是使用三引号 """""" ,这种方式可以非常方便的写多行注释,比较常用在注释比较长的的地方。

"""这段注释比较长。
因为比较长,所以我们用的是三个引号,

不管怎么换行,都会比较方便。

"""

do_something_with_code

快捷键

当表示注释时,每次都要在前面加上一个# 号是不方便的,所以经常会使用快捷键来表示注释,每个编辑器的快捷键会稍微有一点区别,以 Pycharm 为例,当需要表示注释时,我们把要注释的代码用鼠标选中,然后使用 ctrl + / 快捷键就可以自动在前面加上 # 号, 如果有多行,选中多行就可以了。

快捷键表示注释经常用在我们写了一些代码,结果暂时不想让这些代码运行,就可以使用快捷键,把这些代码迅速转成注释。后面想用的的时候再选中这些注释,再按一下快捷键,就又会转回代码。


comments.gif

大牛们的注释习惯

在我接触到的技术大牛中,都有一套自己的注释习惯,虽然每个人会稍微有点区别,但是大体上都差不多。现在都还没说开始写代码呢就学大牛,好像有点早,但我以为好的注释习惯能快速提高写代码的速度。

那么,一套好的注释习惯会包含哪些要素呢?

要素一:用注释在每个自己创建的文件上说明作者、联系方式、创建时间, 这样如果别人看到这段代码有什么疑问,可以第一时间联系你。

# -----------------------------------------------
# Author: 九柄
# 微信号: jiubing1
# 公众号: 九柄
# -----------------------------------------------

在 Pycharm 当中,你并不需要每创建一个文件都手动输入这些注释,可以通过模板创建的方式自动添加。有了模板以后,每创建一个新文件,pycharm 会自动带上这些注释信息。

在 Pycharm中点击 File→Settings→Editor→File and code Templates,右侧找到Python Script,如下图。 时间这种会变的直接用花括号括起来,不会变的就直接写。

要素二: 在文件的顶部说明一下这个文件的具体功能,在这里可以说明一下这个文件的具体用法,甚至可以举一些例子,别人可以照着操作。

"""数据操作模块。
主要是对数据库操作的封装,包括查询数据,插入数据,更新数据。

具体用法如下:

...

"""

要素三: 在每个函数的下面用多行注释写下函数的作用。

class DAO:
def insert_rows(self, table_name,data_set):
"""把excel文件数据导入数据库"""
pass

要素四:单行注释要适量,太多单行注释反而会影响别人阅读代码。想象一下,你的代码本来就写得不错,也容易理解,但是偏要写一行代码就说明一下什么意思,那就有点画蛇添足了。 所以单行注释只在特别难理解的代码上适度添加就行了,不需要每行代码都说明一下。

# 特别难懂的代码再写注释
do_something_difficultly()

总结

注释是学一门编程语言最简单的语法,实际上,这一片只讲了 # 号和 """""" 三引号这两个特别简单的语法。但是真要用起来,光会语法是不够的,编程总是要带入到具体的工作中, 如果没有具体的使用场景,学再多的语法是没什么用的。

我还准备了很多学习技巧和面试套路,基本都可以在文本名片 九柄 获取,顺便三连哦。

很多自学 Python 的人,看了很多教程,但最终还是不会用,不敢用,其中的原因就是没有根据实用性学习,总以为知识学得越多越好。
实际上,很多语法根本就没必要学,因为你这辈子都用不到,而像注释这样的语法,虽然很简单,但是要用好,也不一定容易。

Python自学教程2:大牛们怎么写注释的更多相关文章

  1. Python自学教程8-数据类型有哪些注意事项

    不知不觉,python自学教程已经更新到第八篇了,再有几篇,基本的语法就介绍完了. 今天来总结一下数据类型有哪些需要注意的地方. 元组注意事项 元组是另一种经常使用到的数据类型,看上去和列表差不多.它 ...

  2. Python自学教程1-安装pycharm和执行环境

    Python虽然简单,但是很多没有接触过的学起来还是比较困难的.因此很多人会报班去学,我觉得不需要花那个钱,只要方向正确,加上核心知识点的提炼,自学一个月左右就能上手. 我尝试写下这个自学教程,只讨论 ...

  3. Python自学教程5-字符串有哪些常用操作

    任何编程语言,不管是Python.Java 还是 Golang, 字符串都是最重要的一种数据类型. 但是字符串的操作又很多,初学者经常毫无头绪,不知道从哪儿学起,也不知道哪些操作用得多,今天九柄就和你 ...

  4. Python自学教程12-类和对象怎么用

    Python是一门现代化的编程语言,也是一门面向对象的编程语言. 现代编程语言几乎都支持面向对象编程,面向对象编程是最有效的软件编写方法之一.你可以用类和对象来表示现实当中的任何的事物和行为. 编写类 ...

  5. Python自学教程7:字典类型有什么用

    字典是Python中的一个重要操作,如果字典玩得顺,很多其他的数据类型就可以一通百通. Python字典的定义 字典使用一对大括号进行定义,键值对之间使用逗号隔开,键和值使用冒号分隔. 键必须是不可变 ...

  6. 孤荷凌寒自学python第七十五天开始写Python的第一个爬虫5

    孤荷凌寒自学python第七十五天开始写Python的第一个爬虫5 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  7. 孤荷凌寒自学python第七十四天开始写Python的第一个爬虫4

    孤荷凌寒自学python第七十四天开始写Python的第一个爬虫4 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  8. Python学习教程(一)自学资源分享

    Python 可以用来做什么? 在我看来,基本上可以不负责任地认为,Python 可以做任何事情.无论是从入门级选手到专业级选手都在做的爬虫,还是Web 程序开发.桌面程序开发还是科学计算.图像处理, ...

  9. Python快速教程 尾声

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 写了将近两年的Python快速教程,终于大概成形.这一系列文章,包括Python基 ...

随机推荐

  1. 云原生存储解决方案Rook-Ceph与Rainbond结合的实践

    基础不牢,地动山摇.无论是何种体系架构,底层存储的选择都是一个值得探讨的话题.存储承载着业务的数据,其性能直接影响到业务应用的实际表现.也正因为存储和业务的数据关联紧密,其可靠性也必须得到关注,存储的 ...

  2. 【Spring】AOP实现原理(一):AOP基础知识

    AOP相关概念 在学习AOP实现原理之前,先了解下AOP相关基础知识. AOP面向切面编程,它可以通过预编译方式或者基于动态代理对我们编写的代码进行拦截(也叫增强处理),在方法执行前后可以做一些操作, ...

  3. re学习笔记

    re学习笔记 学习链接: https://regexlearn.com/zh-cn/learn \w: 数字字母下划线 \W: 非\w \d \D: !\d \s: space cha \S: !\s ...

  4. python 基础知识-day6(内置函数)

    1.sorted():用于字典的排序 dict1={"name":"cch","age":"3","sex&q ...

  5. SAP Grid control( ALV Grid 列表 自定义 按钮)

    ALV 列表和按钮 效果 源代码 PROGRAM bcalvc_tb_menu_with_def_but. *&&&&&&&&& ...

  6. django生成迁移文件和执行迁移的命令

    生成迁移文件: python manage.py makemigrations    #创建数据库迁移文件 执行迁移: python manage.py migrate    # 根据数据库迁移文件生 ...

  7. Python爬虫常用:谷歌浏览器驱动——Chromedriver 插件安装教程

    我们在做爬虫的时候经常要使用谷歌浏览器驱动,今天分享下这个Chromedriver 插件的安装方法. 第一步:打开谷歌浏览器打开设置面板 嫌枯燥的小伙伴可以点击此处找管理员小姐姐领取免费资料 第二步: ...

  8. Windows下maven配置环境变量

    右键 "计算机",选择 "属性",之后点击 "高级系统设置",点击"环境变量",来设置环境变量,有以下系统变量需要配置: ...

  9. NC212914 牛牛与后缀表达式

    NC212914 牛牛与后缀表达式 题目 题目描述 给定牛牛一个后缀表达式 \(s\) ,计算它的结果,例如,1+1对应的后缀表达式为1#1#+,'#'作为操作数的结束符号. 其中,表达式中只含有'+ ...

  10. 递归概念&分类&注意事项和练习_使用递归计算1-n之间的和

    递归:方法自己调用自己 递归的分类: 递归分为两种,直接递归和间接递归 直接递归称为方法自身调用自己 间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法 注意事项: 递归一定要有条件限定 ...