<strike id="gcwsi"></strike>
  • <ul id="gcwsi"></ul>

    千鋒教育-做有情懷、有良心、有品質的職業教育機構

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

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

    千鋒教育

    掃一掃進入千鋒手機站

    領取全套視頻
    千鋒教育

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

    上海
    • 北京
    • 鄭州
    • 武漢
    • 成都
    • 西安
    • 沈陽
    • 廣州
    • 南京
    • 深圳
    • 大連
    • 青島
    • 杭州
    • 重慶
    當前位置:哈爾濱千鋒IT培訓  >  技術干貨  >  Python內置函數

    Python內置函數

    來源:千鋒教育
    發布人:xqq
    時間:2023-11-09 17:44:29

    python中有許多內置函數,不像print那么廣為人知,但它們卻異常的強大,用好了可以大大提高代碼效率。

    這次來梳理下8個好用的python內置函數。

    1、set()

    當需要對一個列表進行去重操作的時候,set()函數就派上用場了。

    obj=['a','b','c','b','a']

    print(set(obj))

    #輸出:{'b','c','a'}

    set([iterable])用于創建一個集合,集合里的元素是無序且不重復的。

    集合對象創建后,還能使用并集、交集、差集功能。

    A=set('hello')

    B=set('world')

    A.union(B)#并集,輸出:{'d','e','h','l','o','r','w'}

    A.intersection(B)#交集,輸出:{'l','o'}

    A.difference(B)#差集,輸出:{'d','r','w'}

    2、eval()

    之前有人問如何用python寫一個四則運算器,輸入字符串公式,直接產生結果。

    eval(str_expression)作用是將字符串轉換成表達式,并且執行。

    a=eval('[1,2,3]')

    print(type(a))

    #輸出:

    b=eval('max([2,4,5])')

    print(b)

    #輸出:5

    3、sorted()

    在處理數據過程中,我們經常會用到排序操作,比如將列表、字典、元組里面的元素正/倒排序。

    這時候就需要用到sorted(),它可以對任何可迭代對象進行排序,并返回列表。

    對列表升序操作:

    a=sorted([2,4,3,7,1,9])

    print(a)

    #輸出:[1,2,3,4,7,9]

    對元組倒序操作:

    sorted((4,1,9,6),reverse=True)

    print(a)

    #輸出:[9,6,4,1]

    使用參數:key,根據自定義規則,按字符串長度來排序:

    chars=['apple','watermelon','pear','banana']

    a=sorted(chars,key=lambdax:len(x))

    print(a)

    #輸出:['pear','apple','banana','watermelon']

    根據自定義規則,對元組構成的列表進行排序:

    tuple_list=[('A',1,5),('B',3,2),('C',2,6)]

    #key=lambdax:x[1]中可以任意選定x中可選的位置進行排序

    a=sorted(tuple_list,key=lambdax:x[1])

    print(a)

    #輸出:[('A',1,5),('C',2,6),('B',3,2)]

    4、reversed()

    如果需要對序列的元素進行反轉操作,reversed()函數能幫到你。

    reversed()接受一個序列,將序列里的元素反轉,并最終返回迭代器。

    a=reversed('abcde')

    print(list(a))

    #輸出:['e','d','c','b','a']

    b=reversed([2,3,4,5])

    print(list(b))

    #輸出:[5,4,3,2]

    5、map()

    做文本處理的時候,假如要對序列里的每個單詞進行大寫轉化操作。

    這個時候就可以使用map()函數。

    chars=['apple','watermelon','pear','banana']

    a=map(lambdax:x.upper(),chars)

    print(list(a))

    #輸出:['APPLE','WATERMELON','PEAR','BANANA']

    map()會根據提供的函數,對指定的序列做映射,最終返回迭代器。

    也就是說map()函數會把序列里的每一個元素用指定的方法加工一遍,最終返回給你加工好的序列。

    舉個例子,對列表里的每個數字作平方處理:

    nums=[1,2,3,4]

    a=map(lambdax:x*x,nums)

    print(list(a))

    #輸出:[1,4,9,16]

    6、reduce()

    前面說到對列表里的每個數字作平方處理,用map()函數。

    那我想將列表里的每個元素相乘,該怎么做呢?

    這時候用到reduce()函數。

    fromfunctoolsimportreduce

    nums=[1,2,3,4]

    a=reduce(lambdax,y:x*y,nums)

    print(a)

    #輸出:24

    reduce()會對參數序列中元素進行累積。

    第一、第二個元素先進行函數操作,生成的結果再和第三個元素進行函數操作,以此類推,最終生成所有元素累積運算的結果。

    再舉個例子,將字母連接成字符串。

    fromfunctoolsimportreduce

    chars=['a','p','p','l','e']

    a=reduce(lambdax,y:x+y,chars)

    print(a)

    #輸出:apple

    你可能已經注意到,reduce()函數在python3里已經不再是內置函數,而是遷移到了functools模塊中。

    這里把reduce()函數拎出來講,是因為它太重要了。

    7、filter()

    一些數字組成的列表,要把其中偶數去掉,該怎么做呢?

    nums=[1,2,3,4,5,6]

    a=filter(lambdax:x%2!=0,nums)

    print(list(a))

    #輸出:[1,3,5]

    filter()函數輕松完成了任務,它用于過濾序列,過濾掉不符合條件的元素,返回一個迭代器對象。

    filter()函數和map()、reduce()函數類似,都是將序列里的每個元素映射到函數,最終返回結果。

    我們再試試,如何從許多單詞里挑出包含字母w的單詞。

    chars=chars=['apple','watermelon','pear','banana']

    a=filter(lambdax:'w'inx,chars)

    print(list(a))

    #輸出:['watermelon']

    8、enumerate()

    這樣一個場景,同時打印出序列里每一個元素和它對應的順序號,我們用enumerate()函數做做看。

    chars=['apple','watermelon','pear','banana']

    fori,jinenumerate(chars):

    print(i,j)

    '''

    輸出:

    0apple

    1watermelon

    2pear

    3banana

    '''

    enumerate翻譯過來是枚舉、列舉的意思,所以說enumerate()函數用于對序列里的元素進行順序標注,返回(元素、索引)組成的迭代器。

    再舉個例子說明,對字符串進行標注,返回每個字母和其索引。

    a=enumerate('abcd')

    print(list(a))

    #輸出:[(0,'a'),(1,'b'),(2,'c'),(3,'d')]

    以上內容為大家介紹了Python內置函數,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。http://www.mobiletrain.org/

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

    猜你喜歡LIKE

    python函數中的參數有哪些?

    2023-11-14

    python中pygal模塊如何使用?

    2023-11-14

    Python描述符中有哪三種方法?

    2023-11-14

    最新文章NEW

    如何使用python any()判斷多元素?

    2023-11-14

    python中doctest庫是什么?

    2023-11-14

    python模塊引入的三種方式

    2023-11-14

    相關推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網友熱搜 更多>>