Python的強大有很大一部分是因為其龐大的標準庫提供了各式各樣的功能,基本上日常使用中你所需要的功能都可以從中找到,從而大大減輕開發人員的壓力,節省開發人員的時間,因此,要想更好的使用python,就需要對其標準庫有一定的了解,本系列文章即是介紹python中重要的標準庫模塊。
內建函數(Built-in Function)提供了一些最最常用的功能,是其它很多模塊的基礎,故開篇第一章就介紹python提供的內建函數。
- abs(x)
返回x的絕對值。
>>> abs(-1)
1
- all(iterable)
iterable 中的所有元素都為True時返回True,否則返回False。
>>> test = [1,2,3,0]
>>> all(test)
False
>>> test = [1,2,3]
>>> all(test)
True
any(iterable)
iterable 中的元素有一個為True時返回True,否則返回False。basestring()
字符串類型str和unicode的基類,抽象類型。bin(x)
將一個整數x轉換為二進制字符串。
>>> bin(10)
'0b1010'
- callable(object)
判斷對象object是否可以被調用,可以的話返回True。可被調用的對象需要實現__call__()方法。
>>> callable(str)
True
>>> callable(1)
False
- chr(i)
返回i對應的ASCII字符。
>>> chr(68)
'D'
- classmethod(function)
根據函數function返回一個類方法,常用作類方法裝飾器。
class Test(object):
@classmethod
def f(cls, arg1, arg2, ...):
...
cmp(x,y)
比較對象x和y,x<y 返回負數,x=y 返回0,x>y 返回正數。complex([real[, imag]])
返回一個復數 read+imag1j*,或者將一個字符串或數轉換為復數。delattr(object,name)
刪除對象object的name屬性。dict()
返回一個字典。
>>> dict({1:"1",2:"2"})
{1: '1', 2: '2'}
dir([object])
無參數時,返回當前局部作用域中的屬性;有參數時,返回參數對象的有效屬性。divmod(a,b)
返回a除以b的商和余數的元組。
>>> divmod(10,3)
(3, 1)
- enumerate(sequence,start=0)
返回可迭代對象sequence的(count,value)元組序列,其中count從start開始遞增。
>>> seq = ['a','b','c']
>>> list(enumerate(seq))
[(0, 'a'), (1, 'b'), (2, 'c')]
- filter(function,iterable)
對可迭代對象iterable中的每個元素調用function函數,返回結果序列。
>>> def f(x): return x % 2 == 0
>>> filter(f,range(10))
[0, 2, 4, 6, 8]
float([x])
返回x對應的浮點數。frozenset([iterable])
返回一個不可變的集合對象。getattr(object,name[,default])
返回對象object的name屬性對于的值,若name屬性不存在,則返回default。globals()
返回全局符號表字典。hasattr(object,name)
判斷對象object是否包含屬性name。hash(object)
返回對象object的哈希值。
>>> hash("123")
1911471187
help([object])
返回幫助信息。hex(x)
返回正數x的十六進制字符串表示。
>>> hex(10)
'0xa'
id(object)
返回對象object的唯一標識,通常是object在內存中的地址。input([prompt])
讀取輸入值。int()
返回一個整數。isinstance(object,classinfo)
判斷object是否是classinfo的一個實例,或者是其子類的實例。issubclass(object,classinfo)
判斷object是否是classinfo的子類。len(s)
返回s的長度。
>>> s = "abcde"
>>> len(s)
5
list([iterable])
返回一個列表。locals()
返回當前局部符號表字典。long(x)
返回一個長整形數。map(function,iterable,...)
應用function到每一個元素上,返回結果列表。
>>> def cube(x): return xxx
>>> map(cube,range(10))
[0, 1, 8, 27, 64, 125, 216, 343, 512, 729]
max()
返回最大值。memoryview(object)
返回對象object的內存視圖。min()
返回最小值。next(iterable[,default])
返回迭代器的下一個元素。oct(x)
返回x的八進制表示字符串。
>>> oct(10)
'012'
open(name[, mode[, buffering]])
打開一個文件,返回文件對象。ord(c)
返回字符c對應的整數。
>>> ord('a')
97
- pow(x, y[, z])
如果z存在,返回x^y % z,否則返回x^y。
>>> pow(2,3)
8
>>> pow(2,3,6)
2
print(*objects, sep=' ', end='\n', file=sys.stdout)
打印到file指定的輸出位置,默認為標準輸出。range(stop)
返回從0到stop-1的列表。
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
raw_input([prompt])
讀取一行輸入。reduce(function, iterable[, initializer])
對iterable中的值從左到右順序迭代調用function,若initializer存在,則將其作為初始值。
>>> def add(x,y): return x+y
>>> reduce(add,range(10),0)
45
reload(module)
重新導入模塊module。repr(object)
返回對象object的可打印字符串表示。reversed(seq)
返回seq的反向迭代器。
>>> list(reversed([1,2,3,4,5,6]))
[6, 5, 4, 3, 2, 1]
round(number[, ndigits])
將number舍入到小數點后ndigits位,默認為0。set([iterable])
返回一個集合對象。setattr(object, name, value)
設置object的name屬性值為value。sorted(iterable[, cmp[, key[, reverse]]])
返回iterable排好序的列表。
>>> sorted([3,4,2,1])
[1, 2, 3, 4]
- staticmethod(function)
根據function返回靜態方法,常用作靜態函數裝飾器。
class Test(object):
@staticmethod
def f(arg1, arg2, ...):
...
str(object=' ')
返回object的字符串表示。sum(iterable[, start])
對可迭代對象iterable求和,初始值為start,默認為0。super(type[, object-or-type])
返回一個代理對象,將相應的函數調用代理給該對象的基類。tuple([iterable])
返回一個元組。type(object)
返回object對象的類型。zip(*iterables)
返回一個元組列表,其中第i個元組包含每個序列中第i個元素。
>>> x = [1,2,3]
>>> y = ['a','b','c']
>>> zip(x,y)
[(1, 'a'), (2, 'b'), (3, 'c')]