本文目錄一覽:
- 1、python元組的reference前加個星號是什麼意思
- 2、如何用spss回歸時,給回歸結果加顯著的星號?(不用人工加,讓回歸結果自帶星號)
- 3、python 隨手記 (4) python 函數中*(star/asterisk)和**的使用
python元組的reference前加個星號是什麼意思
在Python函數中,還可以定義可變參數。
如:給定一組數字a,b,c……,請計算a2 + b2 + c2 + ……。
要定義出這個函數,我們必須確定輸入的參數。由於參數個數不確定,我們首先想到可以把a,b,c……作為一個list或tuple傳進來,這樣,函數可以定義如下:
def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
但是調用的時候,需要先組裝出一個list或tuple:
calc([1, 2, 3])
14
calc((1, 3, 5, 7))
84
如果利用可變參數,調用函數的方式可以簡化成這樣:
calc(1, 2, 3)
14
calc(1, 3, 5, 7)
84
所以,我們把函數的參數改為可變參數:
def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
定義可變參數和定義list或tuple參數相比,僅僅在參數前面加了一個*號。在函數內部,參數numbers接收到的是一個tuple,因此,函數代碼完全不變。但是,調用該函數時,可以傳入任意個參數,包括0個參數:
calc(1, 2)
5
calc()
如果已經有一個list或者tuple,要調用一個可變參數怎麼辦?可以這樣做:
nums = [1, 2, 3]
calc(nums[0], nums[1], nums[2])
14
這種寫法當然是可行的,問題是太繁瑣,所以Python允許你在list或tuple前面加一個*號,把list或tuple的元素變成可變參數傳進去:
nums = [1, 2, 3]
calc(*nums)
14
這種寫法相當有用,而且很常見。
如何用spss回歸時,給回歸結果加顯著的星號?(不用人工加,讓回歸結果自帶星號)
編個程吧,給定ALPHA,然後搜索SIG列,小於ALPHA的就在對應的B列加一個footnote
python 隨手記 (4) python 函數中*(star/asterisk)和**的使用
1、函數定義時
-使用單個 * 會將所有的參數,放入一個元組(tuple)供函數使用。
-使用兩個 ** 將所有的關鍵字參數(鍵-值對形式),放入一個字典(dict)供函數使用。
2.函數調用時
-在list,tuple,set前加一個星號會把容器中的所有元素解包(unpack)變成位置參數。
-在dict前加一個星號會把字典的鍵變成位置參數。
-在dict前加兩個星號會把字典的鍵值對變成關鍵字參數。
1、* 的具體使用。位置參數和可變參數的靈活使用
1.1 在函數定義時候,將所有的位置參數放入一個元祖中
1.2 在函數調用時使用*,將list、tuple、set,解包成位置參數。
2、**的具體使用。關鍵字參數和可變參數的具體使用。
2.1 在函數定義時
3、 和 * 在函數中一起使用
注意,在*arg之後,函數只接收關鍵字參數
原創文章,作者:SVYF,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/135906.html