Python中內建函數的簡單用法

高洛峰
發布: 2017-03-02 17:23:49
原創
1254 人瀏覽過

Python提供了一個內嵌模組buildin,該模組定義了一些軟體開發中常用到的函數,利用這些函數可以實現資料類型的轉換、資料的計算、序列的處理等。

buildin模組的內建函數:
1、apply():可以呼叫可變參數清單的函數,把參數存在一個元組或序列中,apply元組參數必須和sum()的參數一致

#!/usr/bin/python
# -*- coding:utf8 -*-
def sum(x=1,y=2):
  return x+y
print apply(sum,(1,3))
登入後複製

#2、filter():可以對某個序列進行過濾,其中過濾的func()參數不能為空​​.
filter(func or None,sequence) –>list,tuple,or string

##

#!/usr/bin/python
# -*- coding:utf8 -*-
def func(x):
  if x>0:
    return x
print filter(func,range(-9,10))
登入後複製

#3、reduce() :對序列中的元素連續運算可以透過迴圈來處理,具有連續處理的功能。

reduce(func,sequence[,initial]) –> value
登入後複製

func是自訂函數,func()中實作參數sequence的連續運算,sequence為待處理序列,若參數

initial的值不為空,將首先傳入函數func()進行計算,如果為空,則對initial的值進行處理

#!/usr/bin/python
# -*- coding:utf8 -*-
def sum(x,y):
    return x + y
print reduce(sum,range(0,10))
print range(0,10)
print reduce(sum,range(0,10),10)
print reduce(sum,range(0,2),10)
登入後複製

4、map():可以對多個序列的每個元素都執行相同的操作,並組成清單傳回。 如果提供多個序列,則每個序列中的元素一一對應進行計算;如果每個序列的長度不相同,
則短的序列後補充“None”,再進行計算

map(func,sequence[,sequence,…]) –> list

#!/usr/bin/python
# -*- coding:utf8 -*-
def power(x):
  return x**x
print map(power,range(1,5))

def power2(x,y):
  return x**y
print map(power2,range(1,5),range(5,1,-1))
print range(1,5)
print range(5,1,-1)
登入後複製

PS:常用內建模組函數:
abs(x)                  [,kwargs]])        將函數的參數放置在序列中傳入函數
bool([x])             返回False
cmp(x,y)               與x,y的大小
delattr(obj,name)          計算表達式的值
float(x)                或字串轉換為float型態資料
hash(object)                     傳回內嵌函數的說明說明
id(x)                    返回一個物件的標示
input([prompt])                      將數位或字串轉換為整數
len(obj)               ,返回字串型別
reduce(func,sequence[,initial])        對序列的值進行累加計算
round(x,n=0)            回傳一個set集合
sorted(iterable[,cmp[,key[,reverse]]])    回傳一個排序後的清單
sum(iterable[,start=0])            返回一個序列的和
type(obj)##type(obj)##type(回傳一個物件的型別
xrange(start[,end[,step]])        功能和range()類似,但一次回傳一個值
zip(seq1[,seq2,…])      清單的元素返回




更多Python中內建函數的簡單用法相關文章請關注PHP中文網!


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板