Python 註釋詳解[學習 Python 必備基礎知識][看此一篇就夠了]

您的“關注”和“點贊”,是信任,是認可,是支持,是動力......

如意見相佐,可留言。
本人必將竭盡全力試圖做到準確和全面,終其一生進行修改補充更新。

1 Python 註釋概述

註釋(Comments)是用來向開發者(用戶)提示或解釋某些代碼的思路、作用和功能等,可以添加到代碼中的任何位置。Python 解釋器(Python Interpreter)在執行程序(代碼)時會忽略註釋部分,不做任何處理,即註釋部分不會被 Python 解釋器執行。

在代碼中添加適當的註釋量很重要,註釋通常佔源代碼的 1/3 左右。

Python 支持兩種類型的註釋:單行註釋和多行註釋。

2 Python 註釋的作用

2.1 調試代碼

在調試(Debug)程序的過程中,單行註釋可以用來臨時快速註釋某些代碼,達到縮小錯誤範圍、提高調試程序效率的目的。

具體操作如下:
在不確定具體是哪一行代碼出錯的情況下,我們可以先把覺得可能有問題的代碼註釋起來,然後再運行程序觀察結果。如果程序可以正常執行,則可以說明錯誤就是由這段代碼引起的;反之,如果依然出現相同的錯誤,則可以說明錯誤不是由這段代碼引起的。

2.2 提高程序的可讀性

註釋的最大作用是提高程序的可讀性,沒有註釋的程序是很難讓人看懂的,說是天書也不爲過。
更甚至,自己寫的代碼,過了一段時間以後,自己也會忘記思路或者目的。

3 Python 單行註釋

3.1 Python 單行註釋概述

Python 中是使用井號#作爲單行註釋的符號,其語法格式如下所示:

# 添加的註釋內容

對以上語法格式的說明:

  • #作爲單行註釋的符號。
  • 從井號#開始,直到這行結束爲止的所有內容都是註釋。Python 解釋器遇到#時,會忽略它後面的整行內容,即#之後的一行內容都屬於註釋部分。

3.2 單行註釋註釋單行代碼的情況

單行註釋註釋單行代碼時通常會將註釋放在代碼的右側,與代碼之間用兩個空格隔開,如下所示:

print("碼農阿杰")  # 輸出筆者的微信公衆號名稱
print('https://www.cnblogs.com/manongajie/')  # 輸出筆者的博客園博客地址
print('https://blog.csdn.net/manongajie/')  # 輸出筆者的CSDN博客地址

3.3 單行註釋註釋多行代碼的情況

單行註釋註釋多行代碼時通常將註釋放在代碼的上一行,如下所示:

# 使用 print() 內置函數輸出字符串
print("微信公衆號:碼農阿杰")
print("博客園博客地址 https://www.cnblogs.com/manongajie/")
print("CSDN 博客地址 https://blog.csdn.net/manongajie/")

# 使用 print() 內置函數輸出數字
print(520)
print(521)
print(1314)

3.4 單行註釋注意事項

3.4.1 單行註釋符號作爲字符串的一部分存在

當單行註釋符號#作爲字符串的一部分出現時,就不能再將它當做單行註釋標記,而應該當做是字符串的一部分(字符串的字符),如下所示:

print('# 微信公衆號:碼農阿杰')
print("# 博客園博客地址 https://www.cnblogs.com/manongajie/""")
print("# CSDN 博客地址 https://blog.csdn.net/manongajie/")

運行結果:

# 微信公衆號:碼農阿杰
# 博客園博客地址 https://www.cnblogs.com/manongajie/
# CSDN 博客地址 https://blog.csdn.net/manongajie/

對以上代碼說明:

  • Python 沒有將井號#當做單行註釋標記,而是將它當做字符串的一部分。

4 Python 多行註釋

4.1 Python 多行註釋概述

多行註釋指的是一次性註釋程序中多行代碼,也可以是一行代碼。

Python 中支持使用三個連續的單引號'''分別作爲註釋的開頭和結尾,或者三個連續的雙引號"""分別作爲註釋的開頭和結尾,一次性註釋多行或單行內容。

多行註釋通常用來爲 Python 函數、類、模塊等等添加功能、版本和作者等描述信息。

4.2 三個連續的單引號註釋

三個連續的單引號註釋內容具體格式如下:

'''
使用三個連續的單引號分別作爲註釋的開頭和結尾
可以一次性註釋多行內容或單行內容
'''

4.3 三個連續的雙引號註釋

"""
使用三個連續的雙引號分別作爲註釋的開頭和結尾
可以一次性註釋多行內容或單行內容
"""

4.4 多行註釋也可以爲函數提供說明文檔

在 Python 中可以通過 help()內置函數或者__doc__屬性查看某個函數的說明文檔,如下代碼所示:

# 查看 print() 內置函數的說明文檔
print('--- 用 help()內置函數查看說明文檔 ---')
help(print)
print('--- 用 __doc__ 屬性查看說明文檔 ---')
print(print.__doc__)

運行結果:

--- 用 help()內置函數查看說明文檔 ---
Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

--- 用 __doc__ 屬性查看說明文檔 ---
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file:  a file-like object (stream); defaults to the current sys.stdout.
sep:   string inserted between values, default a space.
end:   string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.

其實,函數的說明文檔,本質就是一段字符串(跟多行註釋符號一致),都需要程序員自己編寫,只不過作爲說明文檔,字符串的放置位置不同而已,函數的說明文檔通常位於函數內部、所有代碼的最前面。

如何爲函數設置說明文檔呢?如下所示:

# 定義一個比較數字大小的函數
def num_max(num1, num2):
    """
    比較兩個數字的大小
    :param num1:形參1,數字1
    :param num2:形參2,數字2
    :return:大的數字,max_num = num1 if num1 > num2 else num2
    """
    max_num = num1 if num1 > num2 else num2
    return max_num

result = num_max(1, 2)
print(result)
print('--- 用 help() 內置函數查看 num_max() 的說明文檔 ---')
help(num_max)
print('--- 用 __doc__ 屬性查看 num_max() 的說明文檔 ---')
print(num_max.__doc__)

運行結果:

2
--- 用 help() 內置函數查看 num_max() 的說明文檔 ---
Help on function num_max in module __main__:

num_max(num1, num2)
    比較兩個數字的大小
    :param num1:形參1,數字1
    :param num2:形參2,數字2
    :return:大的數字,max_num = num1 if num1 > num2 else num2

--- 用 __doc__ 屬性查看 num_max() 的說明文檔 ---

    比較兩個數字的大小
    :param num1:形參1,數字1
    :param num2:形參2,數字2
    :return:大的數字,max_num = num1 if num1 > num2 else num2

4.5 多行註釋注意事項

4.5.1 多行註釋不支持嵌套

Python 多行註釋不支持嵌套,如下所示爲錯誤寫法:

'''
外層註釋
    '''
    內層註釋
    '''
'''

4.5.2 多行註釋符號'''"""作爲字符串標記

多行註釋符號'''"""也可以作爲字符串的開始和結束標記。

Python 中當多行註釋符號作爲字符串的一部分出現時,就不能再將它們當做多行註釋標記,而應該看做是字符串的一部分,如下所示:

str_info1 = '''微信公衆號:碼農阿杰'''
str_info2 = """博客園博客地址 https://www.cnblogs.com/manongajie/"""
str_info3 = "CSDN 博客地址 https://blog.csdn.net/manongajie/"

print(str_info1)
print(str_info2)
print(str_info3)

運行結果:

微信公衆號:碼農阿杰
博客園博客地址 https://www.cnblogs.com/manongajie/
CSDN 博客地址 https://blog.csdn.net/manongajie/

對以上代碼說明:

  • Python 沒有將這裏的三個引號當做是多行註釋,而是將它們看作字符串的開始和結束標誌。

5 文章其它地址

5.1 微信公衆號:碼農阿杰

5.2 CSDN 博客

5.3 博客園

6 參考資料

6.1 Python 3.8.2 documentation

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章