python常用內建函式
內建函式是python直譯器內建的函式,由cpython執行的c語言編寫的函式,在載入速度上優於開發者自定義的函式,上一篇將python常用內建屬性說了《python常用內建屬性大全》,本篇說常用的內建函式。
當開啟python直譯器後輸入dir(__builtins__)即可列舉出python所有的內建函式:
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'Blocki
ngIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError
', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'Conne
ctionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentErro
r', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPoint
Error', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarni
ng', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError',
'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'ModuleNotFoundEr
ror', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplement
edError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionEr
ror', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning
', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'Syn
taxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutErr
or', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEnc
odeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarni
ng', 'ValueError', 'Warning', 'WindowsError', 'ZeroDivisionError', '__build_clas
s__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package
__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'breakpoint', 'byt
earray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyr
ight', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec
', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasa
ttr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', '
iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'n
ext', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range
', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmeth
od', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']
map函式
map函式對指定序列對映到指定函式
map(function, sequence[, sequence, ...]) -> list
對序列中每個元素呼叫function函式,返回列表結果集的map物件
#函式需要一個引數
list(map(lambda x: x*x, [1, 2, 3]))
#結果為:[1, 4, 9]
#函式需要兩個引數
list(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' ]
a = map( f1, l1, l2 )
print(list(a))
#結果為:[(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的filter物件。
與map不同的是map是返回return的結果,而filter是更具return True條件返回傳入的引數,一個是加工一個是過濾。
返回值的型別和引數sequence的型別相同
list(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。
空間裡移除了, 它現在被放置在fucntools模組裡用的話要先引入:
from functools import reduce
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'
相關文章
- python 常用內建函式Python函式
- Python中常用的內建函式input()、isinstance()Python函式
- python內建函式——sortedPython函式
- Python內建函式示例Python函式
- Python內建函式(一)Python函式
- Python內建函式(二)Python函式
- 1.5.5 Python內建函式Python函式
- Python 內建函式大全Python函式
- 8個最常用的內建函式,Python小白必備!函式Python
- python高階內建函式Python函式
- python 66個內建函式Python函式
- python內建函式 map/reducePython函式
- python合集———內建函式合集Python函式
- python的部分內建函式Python函式
- 12.4、python內建函式—sortedPython函式
- 12.2、python內建函式—formatPython函式ORM
- python常見內建函式Python函式
- python內建函式-eval()函式與exec()函式的區別Python函式
- 內建函式函式
- Python分享之內建函式清單Python函式
- python-內建函式(搭配lambda使用)Python函式
- Python內建函式大全,快來看看!!Python函式
- Python 字串 String 內建函式大全(1)Python字串函式
- Python 字串 String 內建函式大全(2)Python字串函式
- python 內建函式簡單總結Python函式
- (十六)Python學習之內建函式Python函式
- Python補充03 Python內建函式清單Python函式
- webgl內建函式--通用函式Web函式
- python常用內建方法Python
- Python 兩個內建函式: locals() 和 globals()Python函式
- Python 內建函式:——locals 和 globals介紹Python函式
- 三種常用的內建函式--必須牢記函式
- js內建函式JS函式
- php 內建函式PHP函式
- hive內建函式Hive函式
- MySQL 內建函式MySql函式
- 自定義生成器函式模擬Python內建函式filter()函式PythonFilter
- webgl內建函式--指數函式Web函式