101、Python函數調用的時候參數的傳遞方式是值傳遞還是引用傳遞?
Python的參數傳遞有:位置參數、默認參數、可變參數、關鍵字參數。
函數的傳值到底是值傳遞還是引用傳遞,要分情況:
不可變參數用值傳遞:
像整數和字符串這樣的不可變對象,是通過拷貝進行傳遞的,因為你無論如何都不可能在原處改變
不可變對象
可變參數是引用傳遞的:
比如像列表,字典這樣的對象是通過引用傳遞、和C語言里面的用指針傳遞數組很相似,可變對象
能在函數內部改變。
102、對缺省參數的理解 ?
缺省參數指在調用函數的時候沒有傳入參數的情況下,調用默認的參數,在調用函數的同時賦值時,
所傳入的參數會替代默認參數。
*args 是不定長參數,他可以表示輸入參數是不確定的,可以是任意多個。
**kwargs 是關鍵字參數,賦值的時候是以鍵 = 值的方式,參數是可以任意多對在定義函數的時候
不確定會有多少參數會傳入時,就可以使用兩個參數。
103、為什么函數名字可以當做參數用?
Python中一切皆對象,函數名是函數在內存中的空間,也是一個對象。
104、Python中pass語句的作用是什么?
在編寫代碼時只寫框架思路,具體實現還未編寫就可以用 pass 進行占位,使程序不報錯,不會進
行任何操作。
105、有這樣一段代碼,print c會輸出什么,為什么?
a = 10
b = 20
c = [a]
a = 15
答:[10]對於字符串、數字,傳遞是相應的值。