Python函数中的参数(一)
函數傳遞參數時的簡要關鍵點:
1、參數的傳遞是通過自動將對象賦值給本地變量名來實現的。函數參數在實際中只是Python賦值的一個實例。因為引用是以指針的形式實現的,所有的參數實際上都是通過指針進行傳遞的。
2、在函數內部的參數名的賦值不會影響調用者。
3、改變函數的可變對象參數的值也許會對調用者有影響。即是參數是簡單的賦值給傳入的對象,函數能夠就地改變傳入的可變對象,因此其結果會影響調用者。可變參數對于函數來說是可以做輸入和輸出的。
?
對可變對象的在原處的修改會影響其他引用了該對象的變量。
如果不想要函數內部在原處的修改影響傳遞給它的對象,我們可以簡單的創建一個明確地可變對象的拷貝;
1 L = [1,2] 2 b = L[:] #b即是對L的拷貝
參數匹配模型大綱:
1、位置:從左至右匹配??? 一般情況下,也是我們迄今為止最常使用的方法,是通過位置進行匹配把參數值傳遞給函數頭部的參數名稱,匹配順序為從左到右。
2、關鍵字參數:通過參數名進行匹配?? 調用者可以定義哪一個函數接受這個值,通過在調用時使用參數的變量名,使用name = value 這樣的語法。
3、默認參數:為沒有傳入值得參數定義參數值?? 如果調用時傳入的值過于少的話,函數能夠為參數定義接受的默認值,再一次使用語法name=value。
4、可變參數:收集任意多給予位置或關鍵字的參數?? 函數能夠使用特定的參數,他們是以字符*開頭,收集任意多的額外參數。
5、可變參數解包:傳遞任意多的給予位置或關鍵字的參數?? 調用者能夠再使用*語法去將參數集合打散,分成參數。這個*與在函數頭部的*恰恰相反,在函數頭部它意味著收集任意多的參數,而在調用者中意味著傳遞任意多的參數。
6、keyword-only參數:參數必須按照名稱傳遞
?
轉載于:https://www.cnblogs.com/dgq-blog/p/6224245.html
總結
以上是生活随笔為你收集整理的Python函数中的参数(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个武侠好听的名字!
- 下一篇: 大数的减法函数--c语言