您的“關注”和“點贊”,是信任,是認可,是支持,是動力......
如意見相佐,可留言。
本人必將竭盡全力試圖做到準確和全面,終其一生進行修改補充更新。
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 沒有將這裏的三個引號當做是多行註釋,而是將它們看作字符串的開始和結束標誌。