91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python 中星號(*)的用途有哪些

發布時間:2020-11-02 17:07:21 來源:億速云 閱讀:212 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關python 中星號(*)的用途有哪些,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

修飾實例變量時

  • 作用: 講被修飾的實例變量或者可迭代對象進行拆分
def func3(a, b, c):
  print("param a is {}, param b is {}, param c is {}".format(a, b, c))


if __name__ == '__main__':
  arr1 = [1, 2, 3]
  print(arr1, sep='\t') # [1, 2, 3]\t 正常輸出
  print(*arr1, sep='\t') # 1\t2\t3 每個數字中間以\t分割

  arr2 = [[1, 2, 3], [3, 4, 5], [5, 6, 7]]
  print(list(zip(*arr2))) # [(1, 3, 5), (2, 4, 6), (3, 5, 7)] 二維數組的行轉列

  dictionary = {'a': 1, 'b': 2, 'c': 3}
  print(dictionary, sep='\t') # {'a': 1, 'b': 2, 'c': 3}\t 正常輸出
  print(*dictionary, sep='\t') # a\tb\tc\t 每個字母中間以\t分割


  print(func3(**dictionary)) # param a is 1, param b is 2, param c is 3

比較使用和不使用*號后產生的結果就可以發現,單*號將可迭代對象進行了拆分,按單個元素方式依次將數據傳進方法。
配合其他方法使用可以優雅的完成矩陣的行轉列操作。

雙**號的使用,是將變量對象拆分成鍵值對的形式,所以只有dict類型可以使用。
注意上面的func3,他需要三個形參,但是我們只傳入**dict_obj, 就完成了功能。

可迭代對象有:list, dict, tuple, generator, iterator

出現在方法的形式參數位置

  • 作用: 放在參數列表的末尾, 作為不定長的參數列表的形參接受對象。 (可以類比Java的可變參數列表)
def func1(*args):
  print("type", type(args)) # type <class 'tuple'>
  print("all arguments: ", args) # all arguments: (1, 2, 3)
  print("second argument: ", args[1]) # second argument: 2


def func2(**kw):
  print("type", type(kw)) # type <class 'dict'>
  print("all arguments: ", kw) # all arguments: {'a': 1, 'b': 2, 'c': 3}
  print("second argument: ", kw['a']) # second argument: 1


if __name__ == '__main__':
  a, b, c = 1, 2, 3

  func1(a, b, c)
  func2(a=a, b=b, c=c)

盡管函數func1的形參只有一個,但被傳遞三個參數,程序還是可以正常運行。
因為*args將三個參數以tuple形式存儲,作為一個整體傳遞給方法func1。

同理,func2的**kw形參將傳入的三個參數壓成一個dict進行使用。

上述就是小編為大家分享的python 中星號(*)的用途有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

如东县| 建湖县| 安岳县| 交口县| 江安县| 延长县| 佛学| 阿拉尔市| 瑞安市| 玛多县| 淮阳县| 鹤山市| 奈曼旗| 哈巴河县| 铜梁县| 荣昌县| 徐闻县| 明溪县| 岳普湖县| 威信县| 敦化市| 英超| 侯马市| 瑞丽市| 台北市| 嘉荫县| 张家口市| 老河口市| 杂多县| 五华县| 合川市| 郯城县| 蒙城县| 介休市| 灵寿县| 苏尼特左旗| 科尔| 开封市| 涞水县| 松潘县| 宁城县|