2020-10-13

qq_29529339發表於2020-10-14

1.迭代器

迭代是Python最強大的功能之一,是訪問集合元素的一種方式。

  • 可迭代物件:序列、字典、迭代器以及生成器
  • 迭代器的特性:
    - 取一次後就不能使用了;迭代器物件從集合的第一個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會後退
    - 會記住上一次停留的位置,迭代器是一個可以記住遍歷的位置的物件
  • 實現語法:兩種實現方法,iter() 和 next()
list = [1,2,3,4]
it = iter(list)
print(type(it))

2.物件導向

  • 程式導向

  • 程式導向就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候一個一個依次呼叫就可以了;物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為

  • 物件導向程式設計可以使程式的維護和擴充套件變得更簡單,並且可以大大提高程式開發效率 ,另外,基於物件導向的程式可以使它人更加容易理解你的程式碼邏輯,從而使團隊開發變得更從容

另外學習物件導向需要了解一些名詞:類、物件、例項、例項化

類:具有相同特徵的一類事物

物件/例項:具體的某一個事物

例項化:類–>物件的過程

3.類

類是用來描述具有相同的屬性和方法的物件的集合。它定義了該集合中每個物件所共有的屬性和方法。物件是類的例項。

  • 類的建立,使用 class 語句來建立一個新類,class 之後為類的名稱並以冒號結尾:
    • `class MyClass(): pass
    • 類的幫助資訊可以通過ClassName.__doc__檢視
    • 大駝峰的命名規則
  • 例項的建立
    mc = MyClass()

4.屬性和方法
class由類成員,方法,資料屬性組成。

  • 屬性
  • 方法
  • 對於定義在類中的屬性和方法,所有的例項物件都可以被呼叫

5.self引數
self 代表類的例項,self 在定義類的方法時是必須有的,雖然在呼叫時不必傳入相應的引數。

  • 類的方法與普通的函式只有一個特別的區別——它們必須有一個額外的第一個引數名稱, 按照慣例它的名稱是 self
class Test:
    def prt(self):
        print(self)
        print(self.__class__)
 
t = Test()
t.prt()

self 代表的是類的例項,代表當前物件的地址,而 self.class 則指向類。