一個變量名後,我破譯別人的代碼,我看到以下內容:下劃線在Python
def get_set_string(set_):
if PY3:
return str(set_)
else:
return str(set_)
是否下劃線的變量之後意味着什麼或者這只是變量名的一部分,意味着什麼?
一個變量名後,我破譯別人的代碼,我看到以下內容:下劃線在Python
def get_set_string(set_):
if PY3:
return str(set_)
else:
return str(set_)
是否下劃線的變量之後意味着什麼或者這只是變量名的一部分,意味着什麼?
沒有語義與尾部下劃線相關聯。據PEP 8
,風格指南Python中,用戶被敦促使用尾隨爲了強調不與Python的關鍵字和/或Python的內置插件衝突:
single_trailing_underscore_
:使用約定,以避免與Python關鍵詞的衝突,例如
Tkinter.Toplevel(master, class_='ClassName')
使用set_
意味着,內置名稱集,即set
,不會得到陰影和失去函數調用期間其已知的參考。
這意味着什麼。我相信寫這個的人想要一個指定集合的變量名,但set
是Python中的一個類型(它創建了一個集合),所以他添加了下劃線。
這只是名稱的一部分。你需要問作者。 –
這是爲了區別它與'set',內置的集合類型,以避免名稱的陰影 - [*''single_trailing_underscore_':常規使用,以避免與Python關鍵字衝突*](https://www.python .ORG的/ dev/PEPS/PEP-0008 /#描述命名的樣式)。 – jonrsharpe
謝謝你澄清這一點 – nanachan