1. 程式人生 > >Python編碼規範雜記(很亂:))

Python編碼規範雜記(很亂:))

Python編碼規範

匯入模組

  • 每一個(第三方)模組的匯入都需要兩個import語句, 如下

    1. 使用import some的方式匯入模組, 如果有還有子模組的話, 則from father.son import son, as看情況用
    2. 使用from some import class的方式匯入類
  • 匯入自己的模組
    1. 不使用import, 使用from . import 後者 from .some import foo
  • 在import的時候加了.或者..的py檔案是不能直接執行的, 因為這個涉及到模組載入, 在情況下我們不能使用傳統的def __main__測試而是使用一個測試檔案, 先匯入這個模組, 在專案中應該常見一個test目錄

  • Others:
    • 到匯入Python庫中的模組時, from import語句匯入類的時候使用絕對路徑(絕對路徑的當前目錄是主py檔案所在的目錄)
    • 匯入自己專案中的模組的時候, 使用from import語句匯入類的時候使用相對路徑(相對路徑的是相對於使用了from import語句的檔案所在的目錄), 就算是就在當前的目錄下也是用from . import mod
    • import sys,os # 不建議
    • from some import foo, bar # 是推薦的
    • 只要是匯入的使用沒有使用.或者..的, 則查詢的起點都是啟動python虛擬機器的目錄, 這個對理解sys.path.insert(0, '..')失效後很大的幫助, 但是這個方式不建議使用
    • 關於Python的相對匯入, 相對匯入描述的是包之間的關係, 所以要實現相對匯入就需要有對應的package關係(__init__.py)

# 需要使用SVC類
import sklearn.svm as sksvm
from sklearn.svm import SVC

文件編寫


def foo():
"""brief description of the function

details of the function

Parameters
----------
Arg1 : int
    description

Arg2 : int
    description
    
Returns
-------
description

Examples:
---------
name : type
description
"""