在一個模塊中,我應該使用一個,兩個還是沒有下劃線表示一個幫助函數,用戶應該調用而不是?我應該用下劃線開始一個輔助函數嗎?
回答
PEP-8, the Python Style Guide,建議一個單引號下劃線。
以下使用前導或尾隨下劃線被識別特殊形式(這些一般可以用任何情況下常規組合):
_single_leading_underscore
:弱「內部使用」指示器。例如。from M import *
不導入名稱以下劃線開頭的對象。- ...
可能是一個單一的底線,但視情況而定。
具體而言,Python的設計指南(PEP 8)表示:
_single_leading_underscore:弱 「內部使用」 指示器。例如。從M import *不導入名稱以下劃線開頭的對象。
__double_leading_underscore __double_leading_underscore:命名類屬性時,調用名稱修改(在類FooBar中,__boo變爲_FooBar__boo;請參見下文)。
又見這個問題對一些更長的答案: What is the meaning of a single- and a double-underscore before an object name?
在模塊中,雙下劃線會有什麼特別的作用?與單下劃線有什麼不同? – MarJamRob 2013-05-02 21:49:44
是的,當它是班級的一部分時,它會觸發名稱修改。請參閱文檔以獲取完整說明:http://docs.python.org/2/tutorial/classes.html#private-variables-and-class-local-references – 2013-05-02 21:53:02
一般而言,您主要使用它來防止小類覆蓋該方法。 – 2013-05-02 21:53:56
- 1. textview下劃線(輔助文本)
- 2. 路線輔助函數
- 3. Python - 我應該使用下劃線別名嗎?
- 4. 我應該使用計算機輔助驗證工具嗎?
- 5. 使用以下劃線(「_」)開始
- 6. 我應該在會話cookie名稱中包含下劃線嗎?
- 7. 這些輔助文件應該在Git版本控制下嗎?
- 8. 我應該在使用locale id時使用_(下劃線)還是 - (短劃線)?
- 9. 我應該從Trac 0.12開始嗎?
- 10. RotateFlipType輔助函數?
- 11. 我現在應該開始開發Facebook應用程序嗎?
- 12. 應該在列名中使用下劃線嗎?
- 13. 如何用下劃線評估下劃線中的JavaScript函數?
- 14. 下劃線模板變量 - 剛開始
- 15. Magento - 調用輔助函數或擴展輔助類更有效嗎?
- 16. 我應該開始使用核心數據嗎?
- 17. 函數應該以「Get」開始?
- 18. 爲什麼每個輔助構造函數應該調用之前定義的構造函數之一?
- 19. 私人靜態字段,名稱應該以下劃線開頭嗎?
- 20. 什麼值應該代替「下劃線」?
- 21. 我應該開始在一個不使用它的項目上使用TDD嗎
- 22. 我應該在UI線程中調用`Service`的函數嗎?
- 23. 如何在Url.Content輔助函數週圍創建一個包裝輔助器?
- 24. SQL Server始終打開 - 輔助索引
- 25. 我應該在我的項目中開始使用java7嗎?
- 26. 我應該從哪一卷TAOCP開始?
- 27. 我們應該用AngularDart開始一個新的Angular項目(考慮Angular 2.0)嗎?
- 28. 我應該使用MVC 2 RC開始一個新的ASP.Net MVC項目嗎?
- 29. 函數應該調用嗎?
- 30. 輔助函數鑑於
單,雙下劃線的良好描述在這裏,http://stackoverflow.com/questions/1301346/the-meaning-of-a-雙下劃線之前的對象名稱在Python中 – 2013-05-02 21:47:04