Python 常用的內建函式
內建函式
Build-in Function,啟動python直譯器,輸入dir(__builtins__)
, 可以看到很多python直譯器啟動後預設載入的屬性和函式,這些函式稱之為內建函式, 這些函式因為在程式設計時使用較多,cpython直譯器用c語言實現了這些函式,啟動直譯器 時預設載入。
這些函式數量眾多,不宜記憶,開發時不是都用到的,待用到時再help(function), 檢視如何使用,或結合百度查詢即可,在這裡介紹些常用的內建函式。
range
range(stop) -> list of integers range(start, stop[, step]) -> list of integers
- start:計數從start開始。預設是從0開始。例如range(5)等價於range(0, 5);
- stop:到stop結束,但不包括stop.例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
- step:每次跳躍的間距,預設為1。例如:range(0, 5) 等價於 range(0, 5, 1)
python2中range返回列表,python3中range返回一個迭代值。如果想得到列表,可通過list函式
a = range(5)
list(a)
建立列表的另外一種方法
In [21]: testList = [x+2 for x in range(5)]
In [22 ]: testList
Out[22]: [2, 3, 4, 5, 6]
map函式
map函式會根據提供的函式對指定序列做對映
map(...)
map(function, sequence[, sequence, ...]) -> list
- function:是一個函式
- sequence:是一個或多個序列,取決於function需要幾個引數
返回值是一個list
引數序列中的每一個元素分別呼叫function函式,返回包含每次function函式返回值的list。
#函式需要一個引數
map(lambda x: x*x, [1, 2 , 3])
#結果為:[1, 4, 9]
#函式需要兩個引數
map(lambda x, y: x+y, [1, 2, 3], [4, 5, 6])
#結果為:[5, 7, 9]
def f1( x, y ):
return (x,y)
l1 = [ 0, 1, 2, 3, 4, 5, 6 ]
l2 = [ 'Sun', 'M', 'T', 'W', 'T', 'F', 'S' ]
l3 = map( f1, l1, l2 )
print(list(l3))
#結果為:[(0, 'Sun'), (1, 'M'), (2, 'T'), (3, 'W'), (4, 'T'), (5, 'F'), (6, 'S')]
filter函式
filter函式會對指定序列執行過濾操作
filter(...)
filter(function or None, sequence) -> list, tuple, or string
Return those items of sequence for which function(item) is true. If
function is None, return the items that are true. If sequence is a tuple
or string, return the same type, else return a list.
- function:接受一個引數,返回布林值True或False
- sequence:序列可以是str,tuple,list
filter函式會對序列引數sequence中的每個元素呼叫function函式,最後返回的結果包含呼叫結果為True的元素。
返回值的型別和引數sequence的型別相同
filter(lambda x: x%2, [1, 2, 3, 4])
[1, 3]
filter(None, "she")
'she'
reduce函式
reduce函式,reduce函式會對引數序列中元素進行累積
reduce(...)
reduce(function, sequence[, initial]) -> value
Apply a function of two arguments cumulatively to the items of a sequence,
from left to right, so as to reduce the sequence to a single value.
For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates
((((1+2)+3)+4)+5). If initial is present, it is placed before the items
of the sequence in the calculation, and serves as a default when the
sequence is empty.
- function:該函式有兩個引數
- sequence:序列可以是str,tuple,list
- initial:固定初始值
reduce依次從sequence中取一個元素,和上一次呼叫function的結果做引數再次呼叫function。 第一次呼叫function時,如果提供initial引數,會以sequence中的第一個元素和initial 作為引數呼叫function,否則會以序列sequence中的前兩個元素做引數呼叫function。 注意function函式不能為None。
reduce(lambda x, y: x+y, [1,2,3,4])
10
reduce(lambda x, y: x+y, [1,2,3,4], 5)
15
reduce(lambda x, y: x+y, ['aa', 'bb', 'cc'], 'dd')
'ddaabbcc'
在Python3裡,reduce函式已經被從全域性名字空間裡移除了, 它現在被放置在fucntools模組裡用的話要先引入:
from functools import reduce
sorted函式
sorted(...)
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
In [1]: sorted([1, 4, 2, 6, 5, 3])
Out[1]: [1, 2, 3, 4, 5, 6]
In [2]: sorted([1, 4, 2, 6, 5, 3],reverse = 1)
Out[2]: [6, 5, 4, 3, 2, 1]
In [4]: sorted(['dd', 'aa', 'cc', 'bb'])
Out[4]: ['aa', 'bb', 'cc', 'dd']
In [5]: sorted(['dd', 'aa', 'cc', 'bb'], reverse = 1)
Out[5]: ['dd', 'cc', 'bb', 'aa']
相關推薦
python常用內建函式
內建函式(***) 1.print() 螢幕輸出。 ''' 原始碼分析 def print(self, *args, sep=' ', end='\n', file=None): # known special case of print &qu
Python 3 學習(二)—— 常用內建函式(網上收集整理)
文章目錄 輸入輸出 數學運算 型別轉換 序列操作 函式操作 Python 3 所有內建函式 輸入輸出 print(*objects, sep=' ', end='\n', file=sys.stdout,
python 3 常用內建函式
一.簡介 如其他計算機語言一般, python 也有自己的內建函式,本文會一一實現python的所有內建函式,並註明一些需注意的地方 二.內建函式一覽 三.實現 目錄 (1)dir() 返回指定物
python 學習彙總52:迭代器常用內建函式map,filter,zip,reduce(入門學習- tcy)
迭代器常用內建函式 2018/9/15 1.內建函式 map(function, iterA, iterB, ...) ->iterator #建立迭代器等同於itertools.starmap(); filter(function,iterable) ->i
python用於序列操作的常用內建函式
1.len():返回列表中元素的個數,同樣適用於元組、字典、集合、字串>>> len('st')2>>> len('s t')3>>> len("df ")32.max(),min():返回列表中元素的最大值或最小值,同樣
Python-Class___函式與常用內建函式
一、函式 1.1、定義函式 在Python中,定義一個函式要使用def語句,依次寫出函式名、括號、括號中的引數和冒號“ : ”,然後,在縮排塊中編寫函式體,函式的返回值用return語句返回。 >>def func(): print("---hell
python D13 內建函式
# 1、內建函式# 什麼是內建函式? 就是python給你提供的. 拿來直接⽤的函式, 比如print., input等等. 截⽌# 到python版本3.6.2 python⼀共提供了68個內建函式. 他們就是python直接提供給我們的. 有# ⼀些我們已經⽤過了. 有⼀些還沒有⽤過. 還有⼀些需
MySQL 常用內建函式與所有內建函式
MySQL 常用內建函式 【數值函式】 Abs(X) //絕對值abs(-10.9) = 10 Format(X,D) //格式化千分位數值format(1234567.456, 2) =1,234,567.46 Ceil(X) //向上取整ceil(10.1) = 11 Floor(X) //
常用內建函式
dir:檢視當前物件的可呼叫的函式。 help:檢視當前函式的幫助文件 字串: lower():所有的大寫字母轉換成小寫 upper():所有的小寫字母轉換成大寫 swapcase():大寫變小寫,小寫變大寫 title()
python day14內建函式二(lambda,sorted,filter,map,遞迴)
一.lambda匿名函式 為了解決一些簡答的需求而設計的一句話函式. 計算n的n次方 1 def func(n): 2 return n**n 3 print(func(10)) lambda 1 f=lambda n:n**n 2 print(f(10))
python(day16)內建函式,匿名函式
# add = lambda x,y:x+y # print(add(1,2)) # dic={'k1':10,'k2':100,'k3':30} # def func(key): # return dic[key] # print(max(dic,key=func)) #根據返回值判斷最
Python 集合內建函式大全(非常全!)
Python集合內建函式操作大全 集合(s).方法名 等價符號 方法說明 s.issubset(t) s <= t 子集測試(允許不嚴格意義上的子集):s 中所有的元素都是 t 的成員
python筆記(內建函式1)
1.帶key的內建函式有:max,min,filter,map,sorted 例:max([1,2,-3,4,5],key = abs) 2.map的用法。 name = [‘pu’,‘hu’,‘yu’,‘ru’] def func(item): return item + ‘sb’ ret
Python標準內建函式(31-35)
1.31 函式id() 在Python程式中,使用函式id()的語法格式如下所示。 id(object) 函式id()的功能是獲取物件object的記憶體地址,這個記憶體地址是一個整數,能夠保證在該物件的生命週期內是唯一的和恆定的。在Python程式中,具有不重疊壽命的兩
Python標準內建函式(26-30)
1.26 函式globals() 在Python程式中,函式globals()的功能是以字典型別返回當前位置的全部全域性變數,也就是返回表示當前全域性符號表的字典。函式globals()總是當前模組的字典,在函式或者方法中,它是指定義的模組而不是呼叫的模組。 例如在下面的例項
Python標準內建函式(21-25)
1.21 函式filter() 在Python程式中,函式filter()的功能是過濾序列,過濾掉不符合條件的元素,返回一個filter類。filter類實現了__iter__和__next__方法, 可以看成是一個迭代器, 有惰性運算的特性。使用函式filter()的語法格式如
Python標準內建函式(16-20)
1.16 函式dir() 在Python程式中,如果函式dir()沒有引數,則返回當前本地作用域內的名字列表。如果有引數,則嘗試返回引數所指明物件的合法屬性的列表。使用函式dir()的語法格式如下所示。 dir([object]) 引數object是物件、變數或型別。如果
Python標準內建函式(11-15)
1.11 函式classmethod() 在Python程式中,函式classmethod()的功能是將函式包裝成類方法。其語法格式如下所示: classmethod(function) 在Python程式中,經常使用@classmethod修飾符的用法。在宣告一個類方法
Python標準內建函式(01-05)
1.1 函式abs(x) 在Python程式中,函式abs(x)的功能是返回引數“x”的絕對值,引數“x”可以是一個整數或浮點數。如果引數“x”是一個複數,則返回其大小。例如在下面的例項檔案abs.py中,演示了使用函式abs()返回指定數字絕對值的過程。 print ("a
php字串常用內建函式
學習函式的大綱 1.作用 2.語法 3.示例 文章目錄 字串常用函式分類 1.字串長度函式 2.查詢字串位置函式 3.字串替換函式 4.提取字串字元函式 5.分割,連線,反轉函式