程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

15-python學習筆記之類和對象(class)

編輯:Python

文章目錄

  • 前言
    • 創建對象
  • 一、類的方法
    • __init__() 函數
    • 對象方法
    • self 參數
    • 修改對象屬性
    • 刪除對象屬性
    • 刪除對象
    • pass 語句
  • 總結


前言


以下都是自己的一些學習筆記,可能有寫的不對的地方,還望各位大佬體諒和加以指正。


Python 是一種面向對象的編程語言。
Python 中的幾乎所有東西都是對象,擁有屬性和方法。
類(Class)類似對象構造函數,或者是用於創建對象的“藍圖”。

創建類
如需創建類,請使用 class 關鍵字:
使用名為 x 的屬性,創建一個名為 MyClass 的類:

class MyClass:
x = 5

創建對象

現在我們可以使用名為 myClass 的類來創建對象:
創建一個名為 p1 的對象,並打印 x 的值:

p1 = MyClass()
print(p1.x)

一、類的方法

init() 函數

上面的例子是最簡單形式的類和對象,在實際應用程序中並不真正有用。

要理解類的含義,我們必須先了解內置的 __init__() 函數。
所有類都有一個名為 __init__() 的函數,它始終在啟動類時執行。
使用 __init__() 函數將值賦給對象屬性,或者在創建對象時需要執行的其他操作:
創建名為 Person 的類,使用 __init__() 函數為 name 和 age 賦值:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Bill", 63)
print(p1.name)
print(p1.age)

注意:每次使用類創建新對象時,都會自動調用 __init__() 函數。

對象方法

對象也可以包含方法。對象中的方法是屬於該對象的函數。
讓我們在 Person 類中創建方法:
插入一個打印問候語的函數,並在 p1 對象上執行它:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def myfunc(self):
print("Hello my name is " + self.name)
p1 = Person("Bill", 63)
p1.myfunc()

Tips:self 參數是對類的當前實例的引用,用於訪問屬於該類的變量。

self 參數

self 參數是對類的當前實例的引用,用於訪問屬於該類的變量。
它不必被命名為 self,您可以隨意調用它,但它必須是類中任意函數的首個參數:

使用單詞 mysillyobject 和 abc 代替 self

class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age
def myfunc(abc):
print("Hello my name is " + abc.name)
p1 = Person("Bill", 63)
p1.myfunc()

修改對象屬性

您可以這樣修改對象的屬性:
把 p1 的年齡設置為 40:

p1.age = 40

刪除對象屬性

您可以使用 del 關鍵字刪除對象的屬性:
刪除 p1 對象的 age 屬性:

del p1.age

刪除對象

使用 del 關鍵字刪除對象:
刪除 p1 對象:

del p1

pass 語句

類定義不能為空,但是如果您處於某種原因寫了無內容的類定義語句,請使用 pass 語句來避免錯誤。

class Person:
pass

總結

python 是一個面向對象的編程語言,想要創建一個類十分的容易。
創建一個簡單的類:

class MyClass():
def __init__(self, name):
self.name = name
def print():
print(self.name)
myclass = MyClass('tom')
myclass.print()

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved