python双等号怎么输入_python中的星号‘*’和双星号‘**’的解说
一直以來,對于python中函數參數傳遞過程中出現的*和**,理解的稀里糊涂的。最近看了一篇博文,描述的非常清楚,所以自己也抽空寫了一下,可以整理一下自己的思路,也可以幫助到像我一樣的白白小學生。
python中的‘*’和‘**’的使用分為兩個方面,一個是計算,另一個是參數傳遞過程中的打包和解包。計算功能
單*表示乘積,雙*表示乘冪
2.參數傳遞的打包和解包
對函數傳遞的參數進行打包(成元組、列表或者字典)和拆解(分成單個元素),其中單用于元組和列表的打包和解包(非關鍵字參數),雙*用于字典的打包和解拆(關鍵字參數)。
2.1打包
就是將傳遞給函數的任意多個(也可以是0個)非關鍵字參數/關鍵字參數打包成一個元組/字典(元組只能接收非關鍵字參數,字典只能接收關鍵字參數)
在該例子中,*b這個位置可以接收任意多個(也可以是0個)非關鍵字參數,并將其打包成元組。
在該例子中,**b這個位置可以接收任意多個(也可以是0個)關鍵字參數,并將收集到的參數轉換成一個字典。
元組和字典混合的例子:
從上面的例子中可以看出,不加星號的參數,是按照位置參數傳遞,而且必須有一個參數傳遞,b位置可以接收任意多個非關鍵字參數,**c位置可以接收任意多個關鍵字參數。注意,兩者在函數定義中的順序不能顛倒。
2.2拆解
就是傳遞給函數的列表、元組、字典拆分成獨立的多個元素然后賦值給函數中參變量(包括普通的位置參數、關鍵字參數、非關鍵字參數)。在拆解字典時會有兩種解法,一種使用解,解出來傳給函數的只有鍵值(.key),一種是**拆解,解出來的是字典的每一項。
python小白
2018-10-15
總結
以上是生活随笔為你收集整理的python双等号怎么输入_python中的星号‘*’和双星号‘**’的解说的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10截屏的方法是什么
- 下一篇: python分支条件语句格式_Pytho