1. 程式人生 > 其它 >python必會知識點總結

python必會知識點總結

1.什麼是列表的深拷貝,淺拷貝?

淺拷貝:
    只拷貝一級容器中的所有元素獨立出一個單獨的空間.
深拷貝:
    把所有層級的容器中所有元素都單獨拷貝一份,形成獨立的空間

用法示例:請看

2.什麼是LEGB?

LEGB原則(就近找變數原則)
#找尋變數的呼叫順序採用LEGB原則(即就近原則)
B —— Builtin(Python);Python內建模組的名稱空間      (內建作用域)
G —— Global(module); 函式外部所在的名稱空間        (全域性作用域)
E —— Enclosing function locals;外部巢狀函式的作用域(巢狀作用域)
L —— Local(
function);當前函式內的作用域 (區域性作用域) 依據就近原則,從下往上 從裡向外 依次尋找

3.什麼是閉包函式?有什麼特點和意義?

相互巢狀的兩個函式,如果內函式使用了外函式的區域性變數
並且外函式把內函式返回出來的過程,叫做閉包
裡面的內函式叫做閉包函式

是不是閉包?
    1.內函式用了外函式的那個區域性變數
    2.外函式返回內函式

特點:在閉包函式中,內函式使用了外函式的區域性變數
該變數會與內函式發生繫結,延長該變數的生命週期
持續到指令碼執行結束

# 閉包的意義
'''
全域性變數的作用域大,容易被篡改

閉包可以優先使用外函式中的變數,並對閉包中的值起到封裝保護的作用
'''

示例請看:

4.什麼是匿名函式?

概念: 用一句話來表達只有返回值的函式
語法: lambda 引數 : 返回值
特點: 簡潔,高效

示例請看:

5.什麼是迭代器?

迭代器:
    能被next()函式呼叫並不斷返回下一個值的物件稱為迭代器(Iterator  迭代器是物件)
概念:
    迭代器指的是迭代取值的工具,迭代是一個重複的過程,每次重複都是基於上一次的結果而繼續的,
    單純的重複並不是迭代  
特徵:
    並不依賴索引,而通過next指標(記憶體地址定址)迭代所有資料,一次只取一個值,
    而不是一股腦的把所有資料放進記憶體.大大節省空間,

6.什麼是高階函式?

高階函式 : 能夠把函式當成引數傳遞的就是高階函式 (map ,filter ,reduce , sorted)

.示例請看

7.什麼是推導式?

 通過一行迴圈判斷遍歷出一系列資料的方法叫做推導式
語法:
    val for val in iterable

8.什麼是生成器?生成器函式?

#生成器本質是迭代器,允許自定義邏輯的迭代器

#迭代器和生成器區別:
    迭代器本身是系統內建的.重寫不了.
    而生成器是使用者自定義的,可以重寫迭代邏輯

#生成器可以用兩種方式建立:
    (1)生成器表示式  (裡面是推導式,外面用圓括號)
    (2)生成器函式    (用def定義,裡面含有yield)

# yield 類似於 return
共同點在於:執行到這句話都會把值返回出去
不同點在於:yield每次返回時,會記住上次離開時執行的位置 , 下次在呼叫生成器 , 會從上次執行的位置往下走
而return直接終止函式,每次重頭呼叫.
yield 6 和 yield(6) 2種寫法都可以 yield 6 更像 return 6 的寫法 推薦使用

9.什麼是裝飾器?

# ### 裝飾器 : 在不改變原有程式碼的前提下,為原函式擴充套件新功能
"""
@符號 裝飾器的識別符號 :
    (1) 自動把下面修飾的原函式當成引數傳遞給裝飾器
    (2) 把返回的新函式去替換原函式

10.什麼是程序,執行緒,協程?

11. 簡述面向物件的三大特徵,,如何理解類和物件

12.寫出5個魔術方法. 並指出每個方法的觸發時機作用

13.簡述super和self的作用

14.單態,多型例子

15.類中方法有哪些?

16.簡述反射的作用並列舉反射相關的方法

17.如何自定義異常

18.列舉常用模組,簡述作用

19.yield和return有什麼區別?

20.寫一個可修飾帶有引數返回值的函式裝飾器

21.簡述: isinstance, issubclass的作用

22.列舉與類相關的魔術屬性

23.計算類中的所有自定義成員個數

24.用生成器寫一個斐波那契數列,得到前10項的數

25.兩個有序列表,合併後去重且保持有序

26.什麼是b/s , c/s架構

27.交換機,路由器特點

29.簡述osi網路七層模型

30.簡述三次握手,四次揮手

31.Tcp/udp兩大協議區別

32.如何判斷兩個主機網段一致?

33.什麼是生產者消費者模型

34.多執行緒場景中如何保證資料安全

35. 什麼情況下死鎖,如何解決?