iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 6
1
自我挑戰組

Deeplearning and PyQt5 tutorial系列 第 6

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

  • 分享至 

  • xImage
  •  

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

今天來跟大家介紹關於 python 如果要在程式碼盡量減少行數並且又要有效果的話,有一個很方便的方式可以使用。

    def button(self):
        db = MySQLdb.connect(host="127.0.0.1",
                             user="root", passwd="", db="operation")
        cursor = db.cursor()
        sql = "SELECT * FROM user WHERE Date = '%s'" % (self.date_label.text())  
        cursor.execute(sql)
        global Results
        Results = cursor.fetchall()
        if len(Results) == 0:
            vol_edit = len(Results)
        else:
            vol_edit = len(Results[0])
        global row
        row = len(Results)
        global vol

        vol = vol_edit

        col_lst = [tup[0] for tup in cursor.description]

        self.TB.setRowCount(row)
        self.TB.setColumnCount(vol)
        self.TB.setEditTriggers(QAbstractItemView.CurrentChanged)
        self.TB.setHorizontalHeaderLabels(col_lst)


        for i in range(row):
            for j in range(vol):
                temp_data = Results[i][j]  
                data1 = QTableWidgetItem(str(temp_data))  
                self.TB.setItem(i, j, data1)
    def showDate(self,date):
        date = self.Date_edit.selectedDate().toString("yyyy-MM-dd")
        self.date_label.setText(date)

以上的程式碼,本人是拿取在做 PyQt 相關的動作程式碼,這個只是簡單的將資料利用按鈕方式做輸出,並且顯示在label 上,這個在後續會一一的教大家,這上面的 def 方式,如果我們要使用的話,只要將程式碼在 def 中寫好,我們只要在程式中只要呼叫 def 的名稱即可使用,這種方式有幾個好處。

  • 整潔
  • 方便
  • 管理
  1. 整潔:

    • 整潔程式碼的方式,我們如果都一路打下來不是不行,但是看起來就會很雜亂
  2. 方便:

    • 方便度很高,當你要使用這個程式碼的時候,只要直接做呼叫動作就可以做使用。
  3. 管理:

    • 管理上是最方便的,因為程式碼有時候打多了,如果要做修正,或是要搬動的話,都不方便,如果這個時候有些整理過變成一個副程式形式,就會很好看出哪裡有問題,有時候需要利用我們自己規劃的方式來找問題,雖然可以依賴 IDE 所給的錯誤提示,但如果過度依賴可能會造成對程式碼的不熟悉。

那麼今日是簡單的用 def 做介紹,後面幾篇會慢慢介紹 Class 與 使用至別的程式碼該如何使用。
那麼先謝謝大家的觀看拉~~~~~,我們下篇見。

管理好程式碼,就是管理自我的人生一樣,如果太過混亂,那人生也不會過的多快樂。


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

尚未有邦友留言

立即登入留言