python核心編程第四章習題

4–1. Python 對象。與全部 Python 對象有關的三個屬性是什麼?請簡單的描述一下。函數

身份、類型、值對象

4–2. 類型。不可更改(immutable)指的是什麼?Python 的哪些類型是可更改的
(mutable),哪些不是?索引

對象的值是否能夠更改被稱爲對象的可改變性字符串

列表、字典屬於可變類型table

數字、字符串、元組處於不可變類型。im

4–3. 類型。哪些 Python 類型是按照順序訪問的,它們和映射類型的不一樣是什麼?tab

字符串、元組、列表是序列類型字典

映射類型相似序列的索引屬性,不過它的索引並不使用順序的數字偏移量取值, 它的元素
無序存放, 經過一個惟一的 key 來訪問字符

4–4. type()。內建函數 type()作什麼?type()返回的對象是什麼?數字

type() 接受一個對象作爲參數,並返回它的類型。它的返回值是一個類型對象

4–5. str() 和 repr()。內建函數 str()與 repr()之間的不一樣是什麼?哪個等價於反
引號(``)運算符?。

 repr() 輸出對 Python 比較友好, 而 str()的輸出對人比較友好  

 repr() 和 `` 作的是徹底同樣的事情,絕大多數狀況下能夠經過求值運算(使用 eval()內建函數)從新獲得該對象

4–6. 對象相等。您認爲 type(a) == type(b)和 type(a) is type(b)之間的不一樣是什麼?
爲何會選擇後者?函數 isinstance()與這有什麼關係?

type(a) == type(b)是對象值的比較,type(a) is type(b)是對象身份的比較, is 是找地址 找地址更快、高效

isinstance()用於判斷一個對象是不是另一個給定類的實例。

4–8. 列表和元組。列表和元組的相同點是什麼?不一樣點是什麼?

不一樣點:列表可修改,元組不可修改;相同點:都是序列類型,元素按從 0 開始的索引順序訪問

4–9. 練習,給定如下賦值:a = 10b = 10c = 100d = 100e = 10.0f = 10.0請問下面各表達式的輸出是什麼?爲何?(a) a is b    True(b) c is d    True(c) e is f     False???

相關文章
相關標籤/搜索