大綱:
本週談到Python對象的概念,接著包含常用的內建類型、標準類型、運算符、內建函數。
知識點:
4.1對象有分成三個特性,第一個是身份,用id()表示,以求出對象的存取位置;第二是類型,可以用type(),來判斷對象的特性,像是int,string等;第三是值,表示對象的數據項。
4.2標準類型(基本數據類型):
數字、整形、布林值、長數型、浮點型、複數形、字串、列表、元組、字典
4.3其他內建類型:
Null、文件、集合、函數/方法、模塊、布爾值(None,False,空元組)
4.4內部類型:
代碼:可用exec()命令或eval()執行命令
幀:python的執行檔
跟蹤記錄:發生異常時,解釋器回會退出腳本
切片:假設lis=‘abcd’ lis[::-2]=‘db'
4.5標準類型運算符:
對象值的比較:數字比較、字串福按照字符序列值,像是3<4<7 #same as (3<4) and (4<7)
對象身份的比較:a=4,b=a,意思是a,b都指向4的對象上
布爾類型比較:a=2,a>1 True
4.6標準內建函數:
repr(),str(),type(),前兩者repr(),str()都是希望以字串符形式獲得信息,ex.str(1)=‘1'
type()目的就是取得資料的型態
isinstance()省略if-elif-else的繁複程序,減省代碼的數量
4.8標準類型分類:分成三存取、更新、訪問的模型
在存取模型中得分類:數值、文字、列表、元組、字典
更新模型中:在列表的ID值都不會變,不管列表內的值如何變動
訪問模型中:又分為直接存取:數字;順序:列表,元組;映射:字典{}
習題:
4-2:可改是[],{};不可改是’’,()
4-3:字串符、列表、元組是照順序來訪問的,與映射不同的是;映射是無序存放
4-4:type()是回復資料的型態
4-5:兩者差別在於,str()致力於創建一個可讀性的對象,但通常不能被應用在eval值,repr()等價於ˋˋ符號
4-6:is用法偏於對象的比較;==用法是值比較;而isinstance可省去大多if-elif-else的使用
4-8:兩者在訪問模型中,都是有順序的存放,但元祖不能增減元素
4-9:e=10.0,f=10.0
e is f—>False