iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 7
1
自我挑戰組

Deeplearning and PyQt5 tutorial系列 第 7

Day 7 Python 初學者能量補給站-6

  • 分享至 

  • xImage
  •  

大家好~~歡迎來到初學者補給站第七篇

上篇跟各位教學 def 用法,這篇會跟大家說明 Class 的用法與 def 結合。

Class 跟 def 其實有很大的關係,基本上 Class 會包覆著 def,但是不是一定說要包著才能用,大家可以想像 Class就是一個箱子,而 def 就是箱子裡面的工具,當你今天要用某個工具的時候,你打開這個箱子就是呼叫 Class 然後再拿出工具就是.呼叫相關方法,這就是一個簡單的流程。

class Account:
    def __init__(self, name, number, balance):
        self.name = name
        self.number = number
        self.balance = balance

    def deposit(self, amount):
        if amount <= 0:
             raise ValueError('amount must be positive')
        self.balance += amount

    def withdraw(self, amount):
        if amount > self.balance:
            raise RuntimeError('balance not enough')
        self.balance -= amount

    def __str__(self):
        return 'Account({0}, {1}, {2})'.format(
            self.name, self.number, self.balance)

上方是參考資料網站中的 bank 程式碼,它將所需要的方法列入 Class 中,當我今天需要某一項功能時就呼叫 Account 並且要利用方法時就 Account.deposit()等等的方式,就可以使用,它就這麼簡單,而且運算的參數可以帶入 Class中,並且在裏頭直接做一連串的判斷與執行,就可以達成目標,不過有一點要注意,因為是連貫性的關係,如果在中間銜接上寫的方式不對的話,有時候會 Compiler 通過,但沒有成功輸出,通常是內部參數在設定出問題。

def 熟悉的時候就要嘗試利用 Class 做出一連串的程式碼來執行看看,因為這個方式到後面 PyQt 時大家會不斷地看到,所以這個方式一定要熟記

class human:
    def __init__(self,name,old,Birthday_time,cellphone,rule):
        self.name = name
        self.old = old
        self.birthday = Birthday_time
        self.cellphone = cellphone
        self.rule = rule

    def detect_year(self):
        if self.old >= 20:
            print("成年人")
        else:
            print("未成年")

    def Confirm_rule(self):
        if self.rule == "student":
            print("學生")
        else:
            print("社會人士")

    def cellphone_check(self):
        if len(self.cellphone) == 10:
            print("手機號碼為台灣")
        else:
            print("國外號碼")


human_tool = human("Tom",19,"2020-12-25","0912345678","student")
human_tool.detect_year()
human_tool.Confirm_rule()
human_tool.cellphone_check()

以上我自己隨便寫的一套程式,只是簡單的人員辨識,大家可以隨意看看,供初學者參考參考。

這篇就只先跟大家介紹 Class 並且讓大家熟悉熟悉,下一篇我們會介紹將程式套入到別的程式中。
那麼謝謝大家觀看~~~~~~~
參考資料

Class 與 def 就像是兄弟,可分開,可在一起,但在一起又容易吵架,實在傷腦筋


上一篇
Day 6 Python 初學者能量補給站-5
下一篇
Day 8 Python 初學者能量補給站-7
系列文
Deeplearning and PyQt5 tutorial30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言