Python 中如何寫注釋
在寫 Python 代碼的時(shí)候,一個(gè)很好的編碼實(shí)踐就是使得你的代碼簡潔,易懂。組織代碼,設(shè)置變量,以及給函數(shù)有意義的名字,都是幾個(gè)不錯(cuò)的方法。
另外一個(gè)提高代碼可讀性的方式就是使用注釋。一個(gè)注釋就是可以用來解釋代碼的一段人類可讀的解釋或者一個(gè)注解。例如,如果你寫了一個(gè)復(fù)雜的正則表達(dá)式,你可以添加一個(gè)注釋,描述代碼做了什么。
在你的 Python 代碼中添加注釋,在將來你閱讀你的代碼時(shí),可以節(jié)省很多的時(shí)間和努力。比如說,你想修改一段你在幾個(gè)月前或者幾年前寫的腳本。很可能你不記得為什么你寫了一些比較復(fù)雜的代碼,除非你添加一段注釋。這個(gè)注釋同時(shí)也可以幫助其他開發(fā)者理解你的代碼,以及代碼的目的。
注釋應(yīng)該很短,并且切中要點(diǎn)。不要解釋那些很容易讀懂的代碼。
本文主要講解在 Python 中編寫注釋的基礎(chǔ)知識(shí)。
一、在 Python 中寫注釋
Python 會(huì)忽略井號(#
)后面的一切。
注釋可以添加到行首或者和其他代碼在一行。
# This is a Python comment. print("Hello World") # This is an inline Python comment.
井號后面的空格不是強(qiáng)制性的,但是它會(huì)提高注釋的可讀性。
在字符串中間的井號并不意味著是一段注釋的開始。此時(shí),它僅僅是一個(gè)簡單的井號。
paragraph = "# Hash inside quotes is not a comment." Comments should be at the same indent level as the code beneath it: ```py def factorial(n): if n == 0: return 1 else: # Use the factorial function return n * factorial(n-1)
如果你的文本編輯器支持語法高亮,注釋通常都使用綠色代表。
注釋在調(diào)試腳本的時(shí)候非常有用。與其刪除一些行或者代碼塊,不如將他們暫時(shí)注釋掉:
# for fruit in fruits: # print(fruit)
二、Python 中的多行注釋(注釋塊)
不像其他流行的編程語言,Python 僅僅支持單行注釋。
在 Python 中編寫多行注釋的最簡單方式就是每行添加一個(gè)注釋。
# This is the first line. # This is the second line.
另外一個(gè)選項(xiàng)就是使用 docstrings
Docstrings 是一個(gè)多行字符串,用來對模塊,函數(shù),類和方法進(jìn)行文檔化的。
一個(gè) Docstrings 以(""") 開始,可以是 一行或者多行:
"""This is a multiline docstring. """
Docstrings 不是技術(shù)性的注釋。當(dāng) Docstrings 在模塊,函數(shù),類,或者方法的前面出現(xiàn)的時(shí)候,它在字節(jié)碼中結(jié)束,并且變成__doc__
特殊屬性的對象。
你更應(yīng)該使用單行注釋。
三、Shebang
如果你閱讀 Python 腳本,你可能注意到第一行以#!
字符開始,接著是 Python 解釋器的路徑。
#!/usr/bin/env python3
這一串字符串被稱為shebang
,它被用來告訴操作系統(tǒng),應(yīng)該使用什么解釋器來解析文件。腳本以 shebang 開頭,并且可以在終端中直接運(yùn)行,而不用在腳本輸入python
。
因?yàn)?shebang 以 井號開頭,它被認(rèn)為是一個(gè)注釋,并且自動(dòng)被 Python 解釋器忽略。
四、總結(jié)
編寫注釋是一個(gè)非常好的實(shí)踐,它幫助其他開發(fā)者,包括未來的自己,來理解這段代碼在做什么。
在 Python 中,所有以井號開頭的直到行末的,都被認(rèn)為是一段注釋。
以上就是Python 中寫注釋的方法的詳細(xì)內(nèi)容,更多關(guān)于python 注釋的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于Python中*args和**kwargs的深入理解
這篇文章主要給大家介紹了關(guān)于Python中*args和**kwargs的相關(guān)資料,*args和**kwargs代表的是變量, 變量前面的 *(星號)才是必須的,也可以寫成*v和**vs;寫成*args和**kwargs只是一個(gè)常用的書寫方式,需要的朋友可以參考下2021-08-08Python中的復(fù)制操作及copy模塊中的淺拷貝與深拷貝方法
淺拷貝和深拷貝是Python基礎(chǔ)學(xué)習(xí)中必須辨析的知識(shí)點(diǎn),這里我們將為大家解析Python中的復(fù)制操作及copy模塊中的淺拷貝與深拷貝方法:2016-07-07Python+Pandas 獲取數(shù)據(jù)庫并加入DataFrame的實(shí)例
今天小編就為大家分享一篇Python+Pandas 獲取數(shù)據(jù)庫并加入DataFrame的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07conda與jupyter notebook kernel核環(huán)境不一致的問題解決
本文記錄在使用conda時(shí)候出現(xiàn)的問題,jupter notebook中的環(huán)境不一致導(dǎo)致的,具有一定的參考價(jià)值,感興趣的可以了解一下2023-05-05