一、什么是python對象
在python中,構造的任何類型的值都是一個對象,。比如一個整數(shù)類型的值,一個字符串,一個列表等,都可以看做是對象。
所有的對象分為三部分:
(1)身份。每個對象都有個標識自己的id。可用內(nèi)建函數(shù)id()查看
(2)類型??捎胻ype()查看
(3)值。對象用來存放數(shù)據(jù),當然其最主要的數(shù)據(jù)就是它的值。
二、標準類型
數(shù)字,整型,布爾型,長整型,浮點型,復數(shù)性,字符串,列表,元組,字典,模塊,類
三、切片對象
步進切片,多維切片
(1)步進切片sequence[起始索引:結束索引:步進值]
>>> list1 = [1,2,3,4,5,6,7,8]>>> list1[0:7:2][1, 3, 5, 7]
(2)多維切片 sequence[star1:end1,start2:end2]
四、標準類型內(nèi)建函數(shù)
(1)type()返回類型
(2)cmp(a,b)如果a>b,則返回正整數(shù),如果a</b,則返回負整數(shù)
(3)str()轉換為字符類型
五、類型工廠
int(),long,float(),
《python核心編程——python對象》(.unjs)。。。。
作者:廖雪峰 字體:[增加 減小] 類型:轉載
這篇文章主要介紹了簡述Python中的面向對象編程的概念,面向對象編程是Python的重要特性,需要的朋友可以參考下
面向對象編程——Object Oriented Programming,簡稱OOP,是一種程序設計思想,。OOP把對象作為程序的基本單元,一個對象包含了數(shù)據(jù)和操作數(shù)據(jù)的函數(shù)。
面向過程的程序設計把計算機程序視為一系列的命令集合,即一組函數(shù)的順序執(zhí)行。為了簡化程序設計,面向過程把函數(shù)繼續(xù)切分為子函數(shù),即把大塊函數(shù)通過切割成小塊函數(shù)來降低系統(tǒng)的復雜度。
而面向對象的程序設計把計算機程序視為一組對象的集合,而每個對象都可以接收其他對象發(fā)過來的消息,并處理這些消息,計算機程序的執(zhí)行就是一系列消息在各個對象之間傳遞。
在Python中,所有數(shù)據(jù)類型都可以視為對象,當然也可以自定義對象。自定義的對象數(shù)據(jù)類型就是面向對象中的類(Class)的概念。
我們以一個例子來說明面向過程和面向對象在程序流程上的不同之處。
假設我們要處理學生的成績表,為了表示一個學生的成績,面向過程的程序可以用一個dict表示:
std1 = { ‘name‘: ‘Michael‘, ‘score‘: 98 }std2 = { ‘name‘: ‘Bob‘, ‘score‘: 81 }
而處理學生成績可以通過函數(shù)實現(xiàn),比如打印學生的成績:
def print_score(std): print ‘%s: %s‘ % (std[‘name‘], std[‘score‘])
如果采用面向對象的程序設計思想,我們首選思考的不是程序的執(zhí)行流程,而是Student這種數(shù)據(jù)類型應該被視為一個對象,這個對象擁有name和score這兩個屬性(Property),
《簡述Python中的面向對象編程的概念》(.unjs)。如果要打印一個學生的成績,首先必須創(chuàng)建出這個學生對應的對象,然后,給對象發(fā)一個print_score消息,讓對象自己把自己的數(shù)據(jù)打印出來。
class Student(object): def __init__(self, name, score): self.name = name self.score = score def print_score(self): print ‘%s: %s‘ % (self.name, self.score)
給對象發(fā)消息實際上就是調用對象對應的關聯(lián)函數(shù),我們稱之為對象的方法(Method)。面向對象的程序寫出來就像這樣:
bart = Student(‘Bart Simpson‘, 59)lisa = Student(‘Lisa Simpson‘, 87)bart.print_score()lisa.print_score()
面向對象的設計思想是從自然界中來的,因為在自然界中,類(Class)和實例(Instance)的概念是很自然的。Class是一種抽象概念,比如我們定義的Class——Student,是指學生這個概念,而實例(Instance)則是一個個具體的Student,比如,Bart Simpson和Lisa Simpson是兩個具體的Student:
所以,面向對象的設計思想是抽象出Class,根據(jù)Class創(chuàng)建Instance。
面向對象的抽象程度又比函數(shù)要高,因為一個Class既包含數(shù)據(jù),又包含操作數(shù)據(jù)的方法。
小結
數(shù)據(jù)封裝、繼承和多態(tài)是面向對象的三大特點,我們后面會詳細講解。
學習鳥網(wǎng)站是免費的綜合學習網(wǎng)站,提供各行各業(yè)學習資料、學習資訊供大家學習參考,如學習資料/生活百科/各行業(yè)論文/中小學作文/實用范文實用文檔等等!
寫作基礎 | 作文指導 |
寫作經(jīng)驗 | 寫作方法 |
文學常識 |
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據(jù)《信息網(wǎng)絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:0.230秒