Python中注释与声明

Python中注释的写法

#:使用井号进行单行注释

Python中貌似没有提供多行注释,不过我们可以利用三引号的多行字符串来进行多行注释

"""
多行注释内容
多行注释内容
......
"""

或者

'''
多行注释内容
多行注释内容
......
'''

文档字符串

在定义函数或类的时候,在缩进之后的第一行使用三引号注释,就是文档字符串

可以使用 __doc__ 在之后查看这段字符串

def a():
    '''这是文档字符串'''
    pass
print(a.__doc__)

#! 指定解释器

#! /usr/bin/env python3

指定编码

带等于号的

# coding=<encoding name>

最常见的,带冒号的(大多数编辑器都可以正确识别的)

#!/usr/bin/python
# -*- coding: <encoding name> -*-

vim的:

#!/usr/bin/python
# vim: set fileencoding=<encoding name> :

精确表达:

更加精确的解释是:

? ? 符合正则表达式:"^[ \t\v]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)" 就可以;

   关于正则表达式的理解:

   1."^"表示开始;

   2."[ \t\v]"表示匹配制表符\t和垂直制表符\v,*表示匹配0次或者多次,则[ \t\v]*合起来理解就是匹配0次或者多次\t\v;

   3."#"匹配#字符,即对应标题的#字符;

   4.".*"表示接下来匹配任意字符,".*?"表示以非贪心算法匹配任意字符,对应标题中的“?-*-?”;

   5."coding"对应标题中的coding;

   6."[:=]"表示接下来的字符是":"或者"="出现的任意多个字符,对应标题中的":";

   7.[ \t]*表示接下来匹配0次或者多次\t;标题中表示使用了0次;

   8.[-_.a-zA-Z0-9]表示匹配出现'_'字符、小写字母'a至z'、大小字母'A至Z'、数字‘0至9’的任意多的字符,对应标题中的utf-8

   9.接下来标题中的"?-*-?"则这个官方表达式没有给出解释,因此这个正则表达式应该是不完整的,我觉得完整的正则表达式可以为:

     "^[ \t\v]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+).*$"

相关推荐