<abbr id="ciwa6"><option id="ciwa6"></option></abbr>
  • <sup id="ciwa6"><kbd id="ciwa6"></kbd></sup>
    <small id="ciwa6"></small>
  • 千鋒教育-做有情懷、有良心、有品質的職業教育機構

    400-811-9990
    手機站
    千鋒教育

    千鋒學習站 | 隨時隨地免費學

    千鋒教育

    掃一掃進入千鋒手機站

    領取全套視頻
    千鋒教育

    關注千鋒學習站小程序
    隨時隨地免費學習課程

    上海
    • 北京
    • 鄭州
    • 武漢
    • 成都
    • 西安
    • 沈陽
    • 廣州
    • 南京
    • 深圳
    • 大連
    • 青島
    • 杭州
    • 重慶
    當前位置:成都千鋒IT培訓  >  技術干貨  >  哪些python技能—封包解包與函數參數?

    哪些python技能—封包解包與函數參數?

    來源:千鋒教育
    發布人:xqq
    時間: 2023-10-17 13:54:42

    一、封包解包與函數參數

    封包和解包對應的英文是Packing和Unpacking

    封包

    把多個值賦值給一個變量時,Python會自動的把多個值封裝成元組,稱為封包。

    a = 1,2,3

    print(a, type(a)) # (1,2,3),

    ^ 把多個int型的常量封包成一個tuple,—“多到一”

    def test():

    ??? return 1, 2, 3

    a = test()

    print(a, type(a))? # (1, 2, 3)

    ^ 函數的返回值也同理,把多個int值封包成一個tuple返回并賦值給變量a —?“多到一”

    解包

    把一個可迭代對象(列表、元組、字符串、字典等)賦值給多個變量時,python會自動把對象中的各個元素依次賦值給每個變量,這稱為解包(元素的個數需要和變量個數相同)。

    a = [1,2,3]

    a1,a2,a3 = a

    print(a1, type(a1)) # 1,

    ^ 列表a的3個元素分別賦值給了a1,a2,a3. —?“一到多”

    這里注意dict的一個特殊性:

    x,y,z? = {‘a’:1, ‘b’:2, ‘c’:3}

    print(x,y,z)? # a, b, c

    x,y,z? = {‘a’:1, ‘b’:2, ‘c’:3}.keys()

    print(x,y,z)? # a, b, c

    x,y,z? = {‘a’:1, ‘b’:2, ‘c’:3}.values()

    print(x,y,z)? # 1, 2, 3

    x,y,z? = {‘a’:1, ‘b’:2, ‘c’:3}.items()

    print(x,y,z)? # (‘a’, 1) (‘b’, 2) (‘c’, 3)

    for i in {‘a’:1, ‘b’:2, ‘c’:3}:

    ??? print(i)? # a, b, c

    for i in {‘a’:1, ‘b’:2, ‘c’:3}.values():

    ??? print(i)? # 1, 2, 3

    for i in {‘a’:1, ‘b’:2, ‘c’:3}.items():

    ??? print(i)? # (‘a’, 1) (‘b’, 2) (‘c’, 3)

    keys()–鍵序列, values()–值序列, items()–鍵值對序列

    # 插播一個字典的小例子:利用字典推導式, 從字典中提取子集

    scores = {

    ??? ‘a’: 88,

    ??? ‘b’: 72,

    ??? ‘c’: 93,

    ??? ‘d’: 76,

    ??? ‘e’: 66}

    # 找出所有分數大于75的:

    p1 = {k:v for k, v in scores.items() if v> 75}

    print(p1)??? # {‘a’: 88, ‘c’: 93, ‘d’: 76}

    boys = [‘a’,’b’,’c’]

    girls = [‘d’,’e’]

    # 找出所有boys的分數:

    p2 = {k:v for k, v in scores.items() if k in boys}

    print(p2)??? # {‘a’: 88, ‘b’: 72, ‘c’: 93}

    函數返回值的例子:

    def test():

    ??? return 1, 2, 3

    a, b, c = test()

    print(a, b, c)????? # 1 2 3

    ^ 這個先把返回值1,2,3進行了封包,返回一個tuple,然后又把這個tuple解包給了a,b,c. — “多到一到多”

    延伸閱讀:

    二、什么是Python

    Python是一種跨平臺的計算機程序設計語言。 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。最初被設計用于編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用于獨立的、大型項目的開發。

    聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

    猜你喜歡LIKE

    sql server2012r2所在服務器做端口限制,需要開放什么端口才能繼續訪問數據庫?

    2023-10-17

    Oracle有什么優勢和劣勢?

    2023-10-17

    CSS 隱藏頁面元素有哪些方法?

    2023-10-17

    最新文章NEW

    數據庫聚集索引非聚集索引實現上有哪些區別?

    2023-10-17

    開發web應用,好的開發流程是怎么樣的?

    2023-10-17

    為什么說Gradle是Android進階繞不去的坎?

    2023-10-17

    相關推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網友熱搜 更多>>