Python 常用內置函數 (二)

pow(x,y)  x的y次冪,相當於x**y 

x = 2
y = 3
print pow(x, y)

range(),產生一個序列默認從0開始

xrange(),與range功能相同,但是並不會立即創建一個列表,而是在每次迭代的時候生成一個值,在數據量較大時使用會節省內存

print range(2,5)
for i in xrange(2,5):print i

round()對一個數四捨五入

print round(12.6)

iter()生成一個對象的迭代器

for i in iter('abcde'):print i
相當於(使用for迭代一個對象時會默認調用該對象的next()方法)

i = iter('abcde')
print i.next()
print i.next()
print i.next()
print i.next()
print i.next()

幾個常用的類型轉換

max         #返回最大值
min         #返回
int         #將字符串或數值轉爲整數
list        #將其他類型轉爲列表
str         #將其他類型轉爲字符串
tuple       #將其他類型轉爲元組
dict        #創建字典
set         #將其他類型轉爲集合


reload()重新加載模塊
reload(sys)


eval()將字符串str當成有效的表達式來求值並返回計算結果
c = eval("[(1,2,3),[1,2.3]]")
print c,type(c)


getattr(object,name)獲取屬性或方法,setattr(object,name,value)設置屬性或方法,delattr(object,name)刪除屬性或方法,hasattr(object,name)是否有某一屬性或方法返回bool值
class Test:
    def __init__(self):
        pass
    def pri(self):
        print "Hello world"

A = Test()      
a = getattr(A,'pri')
a()
print dir(A)
 
setattr(A,'c','Hello world')
print A.c
print dir(A)
 
delattr(A,'c')
print dir(A)

raise拋出各種異常

raise NameError

id()返回對象的唯一標誌,類似與內存地址

id(object)

exit()退出當前進程,參數爲0正常退出,非0拋出SystemExit異常退出

import sys,traceback
try:
    for i in range(4):
        print i
        exit()
except:
    traceback.print_exc()
print "hello"
os._exit() 直接退出 Python 解釋器,其後的代碼都不執行。
sys.exit() 引發一個 SystemExit 異常,沒有捕獲這個異常,會直接退出;捕獲這個異常可以做一些額外的清理工作。
exit() 跟 其他語言的 exit() 應該是一樣的,相當於 Ctrl + C。


type(object)返回數據類型

print type(str)

map(func,iterdata)將迭代的數據作爲參數,執行func方法

def func1(i):
    return i*i
print map(func1,[1,2,3,4])

reduce(func,iterdata)從第一個開始是前兩個參數,然後是前兩個的結果與第三個合併進行處理,以此類推

def func2(x,y):
    return x*y
print reduce(func2,[1,2,3,4])

isinstance(object,class)判斷對象類型是否相同

A = Test()
print isinstance(A,Test)

is判斷兩者是否是同一對象

C = Test()
B = C
print C is Test
print B is C


__import__()動態引入,和import一樣,多次__import__(),只執行一次
__import__(sys)

input()和raw_input()獲取輸入信息建議使用和raw_input()

s = raw_input("please input:")

exec 執行Python語句

exec "print 'Hello world'"


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章