日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

用python定义一个员工类_python3 类的定义

發(fā)布時間:2024/10/14 python 86 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用python定义一个员工类_python3 类的定义 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.面向過程和面向?qū)ο?/p>

1.1 面向過程

面向過程的程序設(shè)計的核心是過程(流水線式思維),過程即解決問題的步驟,面向過程的設(shè)計就好比精心設(shè)計好一條流水線,考慮周全什么時候處理什么東西。

優(yōu)點是:極大的降低了寫程序的復(fù)雜度,只需要順著要執(zhí)行的步驟,堆疊代碼即可。

缺點是:一套流水線或者流程就是用來解決一個問題,代碼牽一發(fā)而動全身。

1.2 面向?qū)ο?/p>

優(yōu)點是:解決了程序的擴展性。對某一個對象單獨修改,會立刻反映到整個體系中,如對游戲中一個人物參數(shù)的特征和技能修改都很容易。

缺點:可控性差,無法向面向過程的程序設(shè)計流水線式的可以很精準(zhǔn)的預(yù)測問題的處理流程與結(jié)果,面向?qū)ο蟮某绦蛞坏╅_始就由對象之間的交互解決問題,即便是上帝也無法預(yù)測最終結(jié)果。于是我們經(jīng)??吹揭粋€游戲人某一參數(shù)的修改極有可能導(dǎo)致陰霸的技能出現(xiàn),一刀砍死3個人,這個游戲就失去平衡。

面向?qū)ο笾械囊恍┟~:類、對象、實例、實例化

類:具有相同特征的一類事物(人、狗、老虎)

對象/實例:具體的某一個事物(隔壁阿花、樓下旺財)

實例化:類——>對象的過程

2.初識類和對象

python中的一切皆為對象,類型的本質(zhì)就是類。

>>> dict #類型dict就是類dict

>>> d=dict(name='eva') #實例化

>>> d.pop('name') #向d發(fā)一條消息,執(zhí)行d的方法pop

'eva'

在python中,用變量表示特征,用函數(shù)表示技能,因而具有相同特征和技能的一類事物就是‘類’,對象是則是這一類事物中具體的一個。

2.1 初識類

(1)定義類

#定義函數(shù)的方式

deffunctionName(args):'函數(shù)文檔字符串'函數(shù)體

#定義類的方式

'''class 類名:

'類的文檔字符串'

類體'''

#我們創(chuàng)建一個類

classData:pass

#定義函數(shù)的屬性

class Person: #定義一個人類

role = 'person' #人的角色屬性都是人(類下的靜態(tài)屬性)

def walk(self): #人都可以走路,也就是有一個走路方法,也叫動態(tài)屬性

print("person is walking...")

(2)屬性引用(類名.屬性)

class Person: #定義一個人類

role = 'person' #人的角色屬性都是人

def walk(self): #人都可以走路,也就是有一個走路方法

print("person is walking...")print(Person.role) #查看人的role屬性

print(Person.walk) #引用人的走路方法,注意,這里不是在調(diào)用

class Person: #定義一個人類

role = 'person' #人的角色屬性都是人

def __init__(self,name):

self.name= name #每一個角色都有自己的昵稱;

def walk(self): #人都可以走路,也就是有一個走路方法

print("person is walking...")print(Person.role) #查看人的role屬性

print(Person.walk) #引用人的走路方法,注意,這里不是在調(diào)用

實例化:類名加括號就是實例化,會自動觸發(fā)__init__函數(shù)的運行,可以用它來為每個實例定制自己的特征

實例化的過程就是類——>對象的過程

原本我們只有一個Person類,在這個過程中,產(chǎn)生了一個egg對象,有自己具體的名字、攻擊力和生命值。

語法:對象名 = 類名(參數(shù))

egg = Person('egon') #類名()就等于在執(zhí)行Person.__init__()#執(zhí)行完__init__()就會返回一個對象。這個對象類似一個字典,存著屬于這個人本身的一些屬性和方法。#你可以偷偷的理解:egg = {'name':'egon','walk':walk}

(3)查看屬性&調(diào)用方法

print(egg.name) #查看屬性直接 對象名.屬性名

print(egg.walk()) #調(diào)用方法,對象名.方法名()

(4)關(guān)于self

self:在實例化時自動將對象/實例本身傳給__init__的第一個參數(shù),你也可以給他起個別的名字,但是正常人都不會這么做。

(5)類屬性補充

一:我們定義的類的屬性到底存到哪里了?有兩種方式查看

dir(類名):查出的是一個名字列表

類名.__dict__:查出的是一個字典,key為屬性名,value為屬性值

二:特殊的類屬性

類名.__name__#類的名字(字符串)

類名.__doc__#類的文檔字符串

類名.__base__#類的第一個父類(在講繼承時會講)

類名.__bases__#類所有父類構(gòu)成的元組(在講繼承時會講)

類名.__dict__#類的字典屬性

類名.__module__#類定義所在的模塊

類名.__class__#實例對應(yīng)的類(僅新式類中)

(6)總結(jié)

class類名:def __init__(self,參數(shù)1,參數(shù)2):

self.對象的屬性1=參數(shù)1

self.對象的屬性2=參數(shù)2def 方法名(self):pass

def 方法名2(self):pass對象名= 類名(1,2) #對象就是實例,代表一個具體的東西

#類名() : 類名+括號就是實例化一個類,相當(dāng)于調(diào)用了__init__方法

#括號里傳參數(shù),參數(shù)不需要傳self,其他與init中的形參一一對應(yīng)

#結(jié)果返回一個對象

對象名.對象的屬性1 #查看對象的屬性,直接用 對象名.屬性名 即可

對象名.方法名() #調(diào)用類中的方法,直接用 對象名.方法名() 即可

總結(jié)

以上是生活随笔為你收集整理的用python定义一个员工类_python3 类的定义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。