」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > Python 中的類別(簡介)

Python 中的類別(簡介)

發佈於2024-08-18
瀏覽:170

Classes in Python (Introduction)

在Python中,類別是物件導向程式設計的基礎。簡單來說,它們本質上是用於創建具有相似屬性的物件的模板。

創建類別

類別定義語法非常簡單。您所需要的只是關鍵字:class 後面跟著 ClassName:(類別名稱始終採用大駝峰式命名)。我在下面提供了一個例子:
班級商店:
幹得好,您已經成功創建了一個班級!現在我們將更深入地探討如何使用它們。我將使用一個類別在整個部落格中建立和儲存不同的商店。

使用類別

建立類別後的第一步是使用稱為 init 方法的建構子來初始化實例化物件時將使用的實例屬性。

class Shop:
    def __init__(self, name, location, owner):
        self.name = name
        self.location = location
        self.owner = owner

現在,每當我們在此類中創建或實例化一個新的商店/商店物件時,它將共享我們初始化的這些屬性!現在讓我們創建一些商店:

class Shop:
    def __init__(self, name, location, owner):
        self.name = name
        self.location = location
        self.owner = owner

   #method for displaying our stores
   def display_store_info(self)
       return f"Shop: {self.name}, Location: {self.location}, Owner: {self.owner}"

#creating shop instances
first_shop = Shop("FoodMart", "Main Street", "John Smith")
second_shop = Shop("ClothingStore", "Billybob Avenue", "Billy Bob")


現在在我們的 python shell 中,如果我們輸入 print(first_shop.display_store_info()) 我們將看到這個顯示:

商店:FoodMart,地點:主街,店主:John Smith

我們也可以對第二家商店做同樣的事情!我們在類別中建立了一個名為 display_store_info 的方法或函數,它允許我們注入 init 中定義的屬性。現在我們可以製作無限的商店對象,其中包括名稱、位置和所有者作為可重複使用的模板。

這只是課程的開始。在 Python 中使用類別時,其可能性和可重複使用性是令人難以置信的。我很想在以後的部落格文章中詳細介紹,但這只是一個小小的介紹。

版本聲明 本文轉載於:https://dev.to/gianni_cast/classes-in-python-introduction-13cc?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • Laravel Livewire:它是什麼以及如何在您的 Web 應用程式中使用它
    Laravel Livewire:它是什麼以及如何在您的 Web 應用程式中使用它
    Livewire 是 Laravel 生态系统中最重要的项目之一,专门针对前端开发。 Livewire v3 最近发布了,让我们来探讨一下 Livewire 是什么,以及什么样的项目适合其架构。 Livewire 的独特之处在于它允许开发“现代”Web 应用程序,而无需使用专用的 JavaScrip...
    程式設計 發佈於2024-11-06
  • C++中透過空指標呼叫方法可以不崩潰嗎?
    C++中透過空指標呼叫方法可以不崩潰嗎?
    C 中透過空指標呼叫方法的意外行為在提供的程式碼片段中,透過空指標呼叫方法,但令人驚訝的是,該方法呼叫似乎執行時沒有崩潰。這種不尋常的行為提出了一個問題:這是 C 標準允許的還是只是實現最佳化? 解釋在於 C 中方法呼叫的本質。當呼叫物件的方法時,編譯器知道該物件的類型,因此知道要執行的方法的位址。...
    程式設計 發佈於2024-11-06
  • 如何在Python中對列表進行減法?
    如何在Python中對列表進行減法?
    列表相減:計算差值Python 中的列表可以包含各種元素。為了對列表執行數學運算(例如減法),我們採用特定的方法或技術。讓我們探討如何從一個清單中減去另一個清單。 使用列表理解進行逐元素減法一種方法是利用列表理解,它會迭代第一個列表併計算差異,同時保留原始順序:[item for item in x...
    程式設計 發佈於2024-11-06
  • 如何在 Python 中檢查生成器是否為空?
    如何在 Python 中檢查生成器是否為空?
    偵測空產生器初始化在Python中,產生器是一次產生一個值的迭代器。因此,從一開始就確定發電機是否為空可能是一個挑戰。與列表或元組不同,生成器沒有固有的長度或 isEmpty 方法。 解決挑戰為了解決這個問題,常見的方法是使用輔助函數查看生成器中的第一個值而不消耗它。如果 peek 函數傳回 Non...
    程式設計 發佈於2024-11-06
  • ## 想從Python高效呼叫Java?探索 Py4J 作為 JPype 的替代品!
    ## 想從Python高效呼叫Java?探索 Py4J 作為 JPype 的替代品!
    從 Python 呼叫 Java:Py4J 作為 JPype 的替代品從 Python 呼叫 Java 程式碼有幾個潛在的解決方案。其中一個選項 JPype 可能難以編譯,並且由於缺乏最新版本而顯得不活躍。 然而,另一種解決方案是Py4J,這是一個簡單的庫,提供了一個方便的接口,用於從Python ...
    程式設計 發佈於2024-11-06
  • 小Swoole資料庫
    小Swoole資料庫
    Small Swoole Db 2.3引入左連接: $selector = (new TableSelector('user')) ->leftJoin('post', 'messageOwner', 'message') ; $selector->where() -&g...
    程式設計 發佈於2024-11-06
  • 如何使用組譯指令最佳化 __mm_add_epi32_inplace_purego 函數,以在位置總體計數操作中獲得更好的效能?
    如何使用組譯指令最佳化 __mm_add_epi32_inplace_purego 函數,以在位置總體計數操作中獲得更好的效能?
    使用程序集優化 __mm_add_epi32_inplace_purego此問題旨在優化 __mm_add_epi32_inplace_purego 函數的內部循環,該函數對位元組數組執行位置填充計數。目標是透過利用彙編指令來提高效能。 內部循環的原始Go 實作: __mm_add_epi32...
    程式設計 發佈於2024-11-06
  • 使用 React Router 進行導航 React Js 第一部分 React 應用程式中的路由指南
    使用 React Router 進行導航 React Js 第一部分 React 應用程式中的路由指南
    歡迎回到我們的 React 系列!在先前的文章中,我們介紹了元件、狀態、道具和事件處理等基本概念。現在,是時候使用 React Router 探索 React 應用程式中的路由了。路由允許您在應用程式內的不同視圖或元件之間導航,從而創建無縫的使用者體驗? . 什麼是 React 路由...
    程式設計 發佈於2024-11-06
  • file_get_contents() 可以用於 HTTP 檔案上傳嗎?
    file_get_contents() 可以用於 HTTP 檔案上傳嗎?
    使用 HTTP Stream Context 透過 file_get_contents() 上傳檔案使用 cURL 擴充功能可以無縫地實作透過 Web 表單上傳檔案。不過,也可以使用 PHP 的 file_get_contents() 函數結合 HTTP 流上下文來執行檔案上傳。 Multipart...
    程式設計 發佈於2024-11-06
  • React 中的 UseEffect
    React 中的 UseEffect
    歡迎 React Hooks 的世界!今天,我們將深入探討最受歡迎的掛鉤之一:useEffect。別擔心,我們會讓它變得有趣且易於理解。那麼,就讓我們開始吧! ? ?什麼是useEffect useEffect 是一個 React Hook,可讓您在功能元件中執行副作用。副作用是在元件外部發生的操...
    程式設計 發佈於2024-11-06
  • 如何在 Google Cloud Platform 免費層上建立現代資料平台
    如何在 Google Cloud Platform 免費層上建立現代資料平台
    我在 Medium.com 上發布了一系列七篇免費公開文章「如何在 Google Cloud Platform 免費層上建立現代資料平台」。 主要文章位於:https://medium.com/@markwkiehl/building-a-data-platform-on-gcp-0427500f...
    程式設計 發佈於2024-11-06
  • 貼文 #f 掙扎
    貼文 #f 掙扎
    這篇文章是關於我迄今為止在編碼和學習方面的掙扎 一個。我只能保持專註一個小時,最多兩個小時。 b.我很容易分心 c.我不能久坐,否則我會開始感到煩躁和休息腿部問題。 我想到的有助於解決問題的解決方案 一個。我需要開始更頻繁地使用我的番茄工作法應用程式 B. 我開始將手機調成震動,如果我有另一個螢...
    程式設計 發佈於2024-11-06
  • 面向 Web 開發人員的熱門 Chrome 擴充功能 4
    面向 Web 開發人員的熱門 Chrome 擴充功能 4
    2024 年最適合 Web 開發者的 10 款 Chrome 擴展 隨著 2024 年的進展,Chrome 擴充功能已成為 Web 開發人員工具包中不可或缺的一部分,在瀏覽器中提供強大的功能。在這篇文章中,我們將探討今年在 Web 開發社群掀起波瀾的 10 大 Chrome 擴充功...
    程式設計 發佈於2024-11-06
  • 如何使用 React Router v4/v5 巢狀路由:簡化指南
    如何使用 React Router v4/v5 巢狀路由:簡化指南
    React Router v4/v5 的嵌套路由:簡化指南使用React Router 時,嵌套路由是組織的關鍵技術您的應用程式的導航。然而,新手經常面臨設定嵌套路由的挑戰。本文旨在簡化使用 React Router v4/v5 的流程。 React Router v4 在路由嵌套方式上引入了重大轉...
    程式設計 發佈於2024-11-06
  • 如何使用 UTF8 字元編碼保留 MySQL 中的表格式?
    如何使用 UTF8 字元編碼保留 MySQL 中的表格式?
    使用UTF8 字元編碼增強MySQL 命令列格式使用儲存在資料庫表中的瑞典語和挪威語字串時,查詢資料時可能會遇到表格式問題使用不同的字元集。 問題陳述預設情況下,使用「set names latin1;」產生失真的輸出: ----------------------------------- | ...
    程式設計 發佈於2024-11-06

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3