(十六)Python學習之內建函式
(十六)Python學習之內建函式
一、三個重要的內建函式
1.map函式
(1)描述:map函式會根據提供的函式對指定序列做對映;
(2)引數說明:map(function, iterable, …)
function:函式
iterable:一個或多個序列
(3)函式說明:function以引數序列中的每一個元素呼叫function函式,返回包含每次function函式返回值的新列表(Python 2.x 返回列表,Python 3.x 返回迭代器);
(4)例項:對列表的資料進行乘方操作;
L = [1, 2, 3, 4, 5]
L1 = map(lambda x: x**2, L)
print(L1)
L2 = list(L1)
print(L2)
2.filter函式
(1)描述:filter函式用於過濾序列,過濾掉不符合條件的元素,返回由符合條件元素組成的新列表;
(2)引數說明:filter(function, iterable)
function:判斷函式
iterable:可迭代物件
(3)函式說明:該接收兩個引數,第一個為函式,第二個為序列,序列的每個元素作為引數傳遞給函式進行判,然後返回 True 或 False,最後將返回 True 的元素放到新列表中(Python 2.x 返回列表,Python 3.x 返回迭代器);
(4)例項:過濾出列表中的所有奇數;
def is_odd(n):
return n % 2 == 1
L1 = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(L1)
L2 = list(L1)
print(L2)
3.reduce函式
(1)含義:reduce函式會對引數序列中元素進行累積;
(2)引數說明:reduce(function, iterable[, initializer])
function:函式,有兩個引數
iterable:可迭代物件
initializer:可選,初始引數
(3)函式說明:函式將一個資料集合(連結串列,元組等)中的所有資料進行下列操作:用傳給reduce中的函式function(有兩個引數)先對集合中的第1、2個元素進行操作,得到的結果再與第三個資料用function 函式運算,最後得到一個結果;
(4)例項:對列表的資料進行累加操作;
from functools import reduce
L = [1, 2, 3, 4, 5]
L1 = reduce(lambda x, y: x+y, L)
print(L1)
注意:在Python3中,reduce()函式已經被從全域性名字空間裡移除了,它現在被放置在functools模組裡,如果想要使用它,則需要通過引入functools模組來呼叫reduce()函式;
二、其他內建函式
1.數學運算
abs:求數值的絕對值;
divmod:返回兩個數值的商和餘數;
max:返回可迭代物件的元素中的最大值或者所有引數的最大值;
min:返回可迭代物件的元素中的最小值或者所有引數的最小值;
pow:取兩個值的冪運算值,或取兩個值的冪運算值再與第三個值取模;
round:對浮點數進行四捨五入求值;
sum:對元素型別是數值的可迭代物件中的每個元素求和;
print(abs(-9))
print(divmod(99, 4))
print(max([2, 6, 99, 17]), min([2, 6, 99, 17]))
print(max('aaa', 'b', '233'), min('aaa', 'b', '233'))
print(pow(2, 3), pow(2, 3, 5))
print(round(3.1415))
print(sum([1, 2, 3, 4, 5]))
2.型別轉換
bool:根據傳入的引數的邏輯值建立一個新的布林值;
int:根據傳入的引數建立一個新的整數;
float:根據傳入的引數建立一個新的浮點數;
complex:根據傳入引數建立一個新的複數;
print(complex('1+2j'))
print(complex(1, 2))
str:返回一個物件的字串表現形式;
bytearray:根據傳入的引數建立一個新的位元組陣列;
bytes:根據傳入的引數建立一個新的不可變位元組陣列;
memoryview:根據傳入的引數建立一個新的記憶體檢視物件;
ord:返回Unicode字元對應的整數;
chr:返回整數所對應的Unicode字元;
bin:將整數轉換成2進位制字串;
oct:將整數轉化成8進位制數字符串;
hex:將整數轉換成16進位制字串;
tuple:根據傳入的引數建立一個新的元組;
list:根據傳入的引數建立一個新的列表;
dict:根據傳入的引數建立一個新的字典;
set:根據傳入的引數建立一個新的集合;
frozenset:根據傳入的引數建立一個新的不可變集合;
enumerate:根據可迭代物件建立列舉物件;
seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))
range:根據傳入的引數建立一個新的range物件;
iter:根據傳入的引數建立一個新的可迭代物件;
slice:根據傳入的引數建立一個新的切片物件;
s = slice(2, 5, None)
L = "abcdefg"
print(L[s])
super:根據傳入的引數建立一個新的子類和父類關係的代理物件;
object:建立一個新的object物件;
3.序列操作
all:判斷可迭代物件的每個元素是否都為True值;
any:判斷可迭代物件的元素是否有為True值的元素;
print(all([1, 2, 3, 4]))
print(all([1, 2, 3, 0]))
print(any([1, 2, 3, 4]))
print(any([0, 0, 0, 0]))
filter:使用指定方法過濾可迭代物件的元素;
map:使用指定方法去作用傳入的每個可迭代物件的元素,生成新的可迭代物件;
next:返回可迭代物件中的下一個元素值;
reversed:反轉序列生成新的可迭代物件;
sorted:對可迭代物件進行排序,返回一個新的列表;
zip:聚合傳入的每個迭代器中相同位置的元素,返回一個新的元組型別迭代器;
L1 = ['b', 'c', 'a', 'd', 'e']
L2 = '12435'
print(L1)
print(L2)
L1 = sorted(L1)
L2 = sorted(L2)
print(L1)
print(L2)
print(list(zip(L2, L1)))
4.物件操作
help:返回物件的幫助資訊;
dir:返回物件或者當前作用域內的屬性列表;
id:返回物件的唯一識別符號;
hash:獲取物件的雜湊值;
type:返回物件的型別,或者根據傳入的引數建立一個新的型別;
len:返回物件的長度;
ascii:返回物件的可列印表字串表現方式;
format:格式化顯示值;
vars:返回當前作用域內的區域性變數和其值組成的字典(有引數),或者返回物件的屬性列表(沒有引數);
5.反射操作
__ import__:動態匯入模組(匯入字串型別的模組名);
index = __import__('hello')
index.sayHello()
isinstance:判斷物件是否是類或者型別元組中任意類元素的例項;
issubclass:判斷類是否是另外一個類或者型別元組中任意類元素的子類;
hasattr:檢查物件是否含有屬性;
getattr:獲取物件的屬性值;
setattr:設定物件的屬性值;
delattr:刪除物件的屬性;
callable:檢測物件是否可被呼叫;
6.變數操作
globals:返回當前作用域內的全域性變數和其值組成的字典;
locals:返回當前作用域內的區域性變數和其值組成的字典;
7.互動操作
print:向標準輸出物件列印輸出;
input:讀取使用者輸入值;
8.檔案操作
open:使用指定的模式和編碼開啟檔案,返回檔案讀寫物件;
9.編譯執行
compile:將字串編譯為程式碼或者AST物件,使之能夠通過exec語句來執行或者eval進行求值;
eval:執行動態表示式求值;先將字串中的資料和資料結構提取出來,再將字串中的數學運算進行一次;
print(eval('1+2+3+4'))
exec:執行動態語句塊;
repr:返回一個物件的字串表現形式(給直譯器);
10.裝飾器
property:標示屬性的裝飾器;
classmethod:標示方法為類方法的裝飾器;
staticmethod:標示方法為靜態方法的裝飾器。
相關文章
- hive學習筆記之七:內建函式Hive筆記函式
- Python學習之函式Python函式
- Python分享之內建函式清單Python函式
- Python3.5.2 document學習系列之03、The Python Standard Library(python 標準庫)——內建函式Python函式
- Python學習之zip函式Python函式
- python常用內建函式Python函式
- Python內建函式(一)Python函式
- Python內建函式(二)Python函式
- 1.5.5 Python內建函式Python函式
- Python 內建函式大全Python函式
- python 常用內建函式Python函式
- Python內建函式示例Python函式
- python內建函式——sortedPython函式
- python內建函式 map/reducePython函式
- python合集———內建函式合集Python函式
- python的部分內建函式Python函式
- 12.4、python內建函式—sortedPython函式
- 12.2、python內建函式—formatPython函式ORM
- python高階內建函式Python函式
- python常見內建函式Python函式
- python 66個內建函式Python函式
- python內建函式-eval()函式與exec()函式的區別Python函式
- Python學習系列之類的定義、建構函式 def __init__Python函式
- 零基礎學習 Python 之函式Python函式
- Python學習之函式返回多個值Python函式
- 內建函式函式
- Golang記憶體分配內建函式之new函式Golang記憶體函式
- python 內建函式簡單總結Python函式
- Python內建函式大全,快來看看!!Python函式
- Python 字串 String 內建函式大全(1)Python字串函式
- Python 字串 String 內建函式大全(2)Python字串函式
- python-內建函式(搭配lambda使用)Python函式
- Python補充03 Python內建函式清單Python函式
- Python學習筆記|Python之內建變數__name__Python筆記變數
- webgl內建函式--通用函式Web函式
- python學習總結之 函式定義defPython函式
- Python 中級學習之函式裝飾器Python函式
- Python中常用的內建函式input()、isinstance()Python函式