Python 理財程式小技巧 – 超重要的 Python 推薦命名習慣

Python 理財程式小技巧系列閱讀:

一、前言

命名習慣非常重要!雖說 Python 沒有嚴謹到令人髮指的程度,但為了不要一秒惹怒共事的工程師,筆者這裡強烈建議因為理財才開始學習寫程式的初學者,養成良好的習慣,從最基礎但很重要的命名開始。

再次提醒,這裡為了讓初學者能快速理解,文章的用詞不一定足夠嚴謹,也參雜了一些來自個人經驗的描述。追求教科書式嚴謹定義的讀者還請自行翻閱教科書!

二、class 類別命名

在 Python,依照筆者目前與工程師共事的經驗,class 命名一般是習慣用大駝峰式命名(Upper Case Camel)。大駝峰式是把每個字首大寫、其餘小寫的寫法,例如 UpperCaseCamel。

此外,類別名稱會習慣用名詞,像 Java 一樣當作「物件」,而這個傢伙(類別)懂得做許多定義好的事情(屬性、函數等)。

以下為一個簡單範例,類別名稱為 ExchangeAccount 非常簡單明瞭,就是交易所帳戶,命名規則為大駝峰式。

帳戶餘額 balance 有 10,000 元,但是沒有股票代碼為 2330 的持倉部位。這個帳戶的密碼是 12341234。另外,它還有一個函數,存錢的時候可以呼叫,把存入的錢加到餘額 balance 上。

class ExchangeAccount:
    def __init__(self):
        self.balance = 10000
        self.position = {"2330":0}
        self.password = “12341234”
    def deposit(self, amount: float):
        self.balance += amount

三、def 函數命名

與 class 類別不同,Python 的函數命名習慣用蛇形命名(Snake Case),也就是所有字母都用小寫,並且以半形底線做區隔。並且建議以動詞作為開頭。

例如,我們接著上面的例子,設計一個函數 check_password,用來確認密碼是否輸入正確:

class ExchangeAccount:
    def __init__(self):
        self.balance = 10000
        self.position = {"2330":0}
        self.password = “12341234”
    def deposit(self, amount: float):
        self.balance += amount    
    def check_password(self, pw):
        return True if pw == self.password else False

三、變數命名

Python 變數命名一般也是建議用蛇形命名。

四、常數命名

一般來說,Python 中表達為常數的變數,會使用「全部大寫」的蛇形命名。以上方的範例來說,我們可能會想要再定義一個變數來代表交易手續費率。那我們就可以寫成:

FEE_RATE = 0.001425

如果各位讀者用的是 VS Code 之類的 IDE,這些開發工具會很貼心地幫忙把這些類別、函數、變數、常數,塗上不同的顏色,閱讀起來相當方便!

大家一起來養成好的寫程式習慣吧!

延伸閱讀:


量化通粉絲社群,一起討論程式交易!

加入LINE匿名群組量化通QuantPass」無壓力討論與分享!

追蹤量化通的粉絲專頁量化通QuantPass」即時獲取實用的資源!

python_course_all_1920X400
QP66
QP66

具備逾十年交易經驗,研究交易資產橫跨股票、債券、外匯、原物料,以及加密貨幣。現為量化避險基金交易員,亦曾任職於資金規模逾百億的避險基金,以及在區塊鏈企業擔任顧問一職。

擅長從宏觀至微觀,由淺入深挖掘交易機會,並運用Python實現全自動化的投資組合管理。

文章: 24

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *