第十一章 Python常用內建函數

來源:互聯網
上載者:User

標籤:python常用內建函數

內建函數,可以直接使用,而不需要import。

在前面章節學過的sorded()、reversed()、range(),filter()、reduce()、map()等內建函數,下面再回顧下及學習一些新的內建函數。

函數

描述

樣本

sorded(iterable, cmp=None, key=None, reverse=False) 正序排序可迭代對象,產生新的列表

>>> lst = [2,3,4,1,5]

>>> sorted(lst)

[1, 2, 3, 4, 5]

對字典value排序:

>>> dict = {‘a‘:86, ‘b‘:23, ‘c‘:45}                                 

>>> sorted(dict.iteritems(), key=lambda x:x[1], reverse=True)

[(‘a‘, 86), (‘c‘, 45), (‘b‘, 23)]

reversed(sequence) 反向排序序列,返回一個可迭代對象

>>> lst = [1,2,3,4,5]

>>> lst2 = []

>>> for i in reversed(lst):

...    lst2.append(i)

...

>>> lst2

[5, 4, 3, 2, 1]

range(start, stop[, step]) 產生整數列表

>>> range(0,5)

[0, 1, 2, 3, 4]

>>> range(0,5, 2) 

[0, 2, 4]

xrange(start, stop[, step]) 產生可迭代對象,比range節省記憶體資源

>>> type(xrange(0,5))

<type ‘xrange‘>

>>> for i in xrange(0,5):

...   print i

...

0

1

2

3

4

filter(function or None, sequence) 將序列中的元素通過函數處理返回一個新列表、元組或字串

例如:過濾列表中的奇數

>>> lst = [1,2,3,4,5]

>>> filter(lambda x:x%2==0, lst)

[2, 4]

reduce(function, sequence[, initial]) 二元運算函數,所以只接受二元操作函數

例如:計算資料行表總和

>>> lst = [1,2,3,4,5]

>>> reduce(lambda x,y:x+y, lst)

15

先將前兩個元素相加等於3,再把結果與第三個元素相加等於6,以此類推

map(function, sequence[, sequence, ...]) 將序列中的元素通過函數處理返回一個新列表

>>> lst = [1,2,3,4,5]

>>> map(lambda x:str(x)+".txt", lst)

[‘1.txt‘, ‘2.txt‘, ‘3.txt‘, ‘4.txt‘, ‘5.txt‘]

len(object) 返回序列的數量

>>> len([1,2,3])

3

abs(number) 返回參數的絕對值

>>> abs(-2)

2

eval(source[, globals[, locals]]) 把字串當成Python運算式處理並返回計算結果

>>> a = ‘1 + 2‘

>>> eval(a)

3

repr(object) 把象轉為字串表示

>>> repr(3)

‘3‘

>>> repr(‘1+2‘)

"‘1+2‘"

round(number[, ndigits]) number四捨五入計算,返回浮點數。ndigits是保留幾位小數

>>> round(1.6)

2.0

min(iterable[, key=func])

min(a, b, c, ...[, key=func]

返回最小項。可以是可迭代對象,也可以是兩個或兩個以上參數。

>>> min([1,2,3])

1

>>> min(‘a‘, ‘b‘, ‘c‘)

‘a‘

max(iterable[, key=func])

max(a, b, c, ...[, key=func])

返回最大項。與min使用方法一樣。
sum(sequence[, start]) 返回序列合,start在計算結果上加的數

>>> sum([1,2,3])

6

isinstance(object, class-or-type-or-tuple) 判斷object類型,返回布爾值

>>> isinstance([1,2,3],list)

True

>>> isinstance([1,2,3],tuple)

False

hex(number) 返回整數十六進位表示

>>> hex(18)

‘0x12‘

zip(seq1 [, seq2 [...]]) 返回一個合并的列表元組,每個元組裡面是每個seq對應的下標值,在長度最短的seq結束。

>>> zip(range(5),[‘a‘,‘b‘,‘c‘])

[(0, ‘a‘), (1, ‘b‘), (2, ‘c‘)]

cmp(x, y) 比較兩個對象,x==y等於返回0,x>y返回整數,x<y返回負數

>>> cmp(1,1)

0

>>> cmp(1,2)

-1

>>> cmp(1,0)

1

locals() 返回當前局部變數字典

>>> a = 1

>>> b = 2

>>> locals()

{‘a‘: 1, ‘b‘: 2,......


部落格地址:http://lizhenliang.blog.51cto.com

QQ群:323779636(Shell/Python營運開發群)


內建函數還有很多,有興趣可以參考一下:https://docs.python.org/2/library/functions.html

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M00/8A/53/wKioL1gthHnDnve6AABW84jo8zA426.png" title="Image.png" alt="wKioL1gthHnDnve6AABW84jo8zA426.png" />


本文出自 “李振良的技術部落格” 部落格,請務必保留此出處http://lizhenliang.blog.51cto.com/7876557/1874016

第十一章 Python常用內建函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.