Animal如何修改python3中的類?
之前提到的dog只是Animal的一個分支,這麼說大家就明白Animal的範圍有多大了。當然在對Animal函式內容講述之前,我們有必要整個回顧一下類是什麼,這樣才能更好加深Animal函式在其中的運用。整體回顧過後,我們會細化Animal的使用方法,小夥伴們學的時候注意區分和運用。
python中的一個類中有屬性和方法,而二者都分為很多種型別,如下所示
屬性分為普通屬性和類屬性
方法分為普通方法、類方法、靜態方法。
具體定義方法和使用見下面的程式碼和註釋,各個屬性和方法的使用習慣等見最後的 print_animal 函式列印出的結果
下面是類的定義
class Animal: # 這裡是屬性定義 actually = "animal" # 類屬性 def __init__(self, name, age): # 定義例項時,放在括號裡的才要指定 self.name = name # 普通屬性,要在__init__方法中定義 self.age = age # 下面是方法的定義 def sleep(self): # 普通方法 print(self.name, "is sleeping") def eat(self, food): # 普通方法,另帶引數 print(self.name, "is eating", food) @classmethod def sentence(cls, adv): # 類方法,使用裝飾器變成類方法 print("I am", adv, "an", cls.actually) @staticmethod def other(person, do): # 靜態方法 print(person, "is", do+"ing") @staticmethod def print_animal(): print("這是之後定義子類的父類,主要講解最基本的屬性、方法以及屬性的修改") print("類屬性actually:屬於整個類,每個例項都有的屬性,內容相同,建立例項時不需要指定,類和例項都可以呼叫") print("普通屬性name age:屬於各個例項,用於儲存例項資料") print("普通方法sleep eat:由物件呼叫,至少一個引數self") print("類方法sentence:由類、例項呼叫,至少一個引數cls,可以引用類屬性") print("靜態方法other:類中的普通函式,可由類、例項呼叫") print("修改類屬性:用類呼叫修改,所有例項都更改;用例項呼叫修改不影響類和其他例項") print("修改普通屬性:直接賦值即可")
建立例項
# 建立例項呼叫Animal類 adams = Animal(name="Adams",age=2) # 建立例項 adams.actually # 呼叫類屬性 # 'animal' Animal.actually # 類呼叫類屬性 # 'animal' adams.name # 呼叫普通屬性 # 'Adams' adams.sleep() # 呼叫普通方法 # Adams is sleeping adams.eat("meat") # 有引數的普通方法 # Adams is eating meat adams.sentence("really") # 例項呼叫類方法 # I am really an animal Animal.sentence("actually") # 類呼叫類方法 # I am actually an animal adams.other("Tim", "play") # 例項呼叫靜態方法 # Tim is playing Animal.other("Mary", "watch") # 類呼叫靜態方法 # Mary is watching Animal.actually = "Animal" # 修改類屬性 adams.actually # 'Animal' adams.actually = "animal" Animal.actually # 'Animal' adams.age = 3 # 普通屬性這樣就改過來了 Animal.print_animal()
這樣看完本篇文章,Animal的用法還是很多的哈。有的小夥伴可能已經看得暈頭轉向,這是正常的情況,小編第一次學習的時候也有點不是全部理解,慢慢來就好啦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2480/viewspace-2832236/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何理解Python3中的子類和父類?Python
- python3中新類如何繼承?Python繼承
- Java 中賦值類時候修改後原類中的值改變Java賦值
- python3類中的Cat變數使用有限制嗎?Python變數
- Eclipse中如何修改SVN的地址Eclipse
- 如何修改Linux下預設為Python3版本LinuxPython
- Python3中如何做的自定義模組的引用?Python
- Python3中的模組Python
- 如何在MacOS中修改程式塢的位置?Mac
- python3迴圈中如何加入換行符?Python
- python3中編碼如何獲取網頁?Python網頁
- Oracle EBS中的四類schema及使用FNDCPASS修改密碼的方式Oracle密碼
- 如何在java類中呼叫websphere中的jndi物件JavaWeb物件
- Python3中的運算子Python
- 教你如何修改執行中的容器埠對映
- .Net 如何修改 HttpHeaders 中的 Content-DispositionHTTPHeader
- Java 中的屠龍之術:如何修改語法樹?Java
- 如何修改Excel表格中的網格線顏色Excel
- 如何修改meclipse中的預設瀏覽器Eclipse瀏覽器
- 如何“修改”底層框架原始碼中的某些功能框架原始碼
- 如何修改檔案中間的幾個位元組
- SQL Server複製的表中如何修改欄位SQLServer
- Texttable如何在python3中輸出成績表格?Python
- python3筆記---抽象類例子Python筆記抽象
- 如何優雅的修改node_modules中的依賴庫
- python3如何排序Python排序
- 如何用程式碼修改struts中的web.xml配置WebXML
- 如何在ORACLE中修改表的約束條件啊Oracle
- Python3中的函式 大全Python函式
- 修改flashget的另類方法(已修正)
- 使用Reflexil修改類庫Flex
- 【譯】如何自定義Flask中的響應類Flask
- Python3基礎18——類與物件Python物件
- Python3資料庫操作基本類Python資料庫
- 如何在eclipse中的maven中永久修改jdk的版本號EclipseMavenJDK
- 在Linux中如何檢視檔案的修改日期Linux
- 如何線上編輯修改PDF檔案中的背景顏色
- python3去除str中的n、rPython