Python中的多个内置函数举例
admin
2023-07-07 06:05:14
0

Python内置函数:

官方帮助文档:

https://docs.python.org/2.7/

返回数字的绝对值.

def fun(x):

if x < 0:

return -x

return x

print fun(10)
常用函数:

abs()

>>> abs(-100)

100
取列表最大值和最小值

max()

>>> max('1235',123)

'1235'
min()

>>> min('asdfq3w45')

'3'
len()

>>> len('abcdf')

5

>>> len([1,3,4,5])

4

>>> len((1,3,4,5))

4

>>> len({1:3,2:5})

2
divmod()

>>> help(divmod)

Help on built-in function divmod in module __builtin__:

divmod(...)

divmod(x, y) -> (quotient, remainder)

Return the tuple (x//y, x%y).  Invariant: div*y + mod == x.

 >>> divmod(5,2)

(2, 1)
pow()

pow(...)

pow(x, y[, z]) -> number

With two arguments, equivalent to x**y.  With three arguments,

equivalent to (x**y) % z, but may be more efficient (e.g. for longs).

>>> pow(2,3)

8

>>> pow(2,3,3)

2
round()

round(...)

round(number[, ndigits]) -> floating point number

Round a number to a given precision in decimal digits (default 0 digits).

This always returns a floating point number.  Precision may be negative.

>>> round(12.2)

12.0

>>> round(12.23)

12.0

>>> round(12.233,2)

12.23
callable()

是否是可调用对象

>>> a = 123

>>> callable(a)

False

>>> def a():

...     pass

...

>>> callable(a)

True

>>> class A(object):

...     pass

...

>>> callable(A)

True
type()

判断类型

>>> type(a)


isinstance()

判断类型,

>>> l =[1,2,3]

>>> isinstance(l,list)

True

>>> isinstance(l,str)

False

>>> isinstance(l,(list,str))

True

判断是不是一个类

>>> A



>>> a = A()

>>> a



>>> isinstance(a,A)

True
cmp()

>>> cmp(1,2)

-1

>>> cmp(1,0)

1

>>> cmp(1,1)

0

>>> cmp('a','ab')

-1

>>> cmp('a','a')

0

>>> cmp('helloa','hello')

1
range()

>>> a = range(10)

>>> a
xrange()

效率更高,不用时候不在内存中产生值

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> b = xrange(10)

>>> b

xrange(10)

>>> for i in b:print i

...

0

1

2

3

4

5

6

7

8

9
int()

>>> int(123.33)

123
long()

>>> long(200)

200L
float()

>>> float('123')

123.0

>>> float('123.0022')

123.0022

>>> float(123.0034)

123.0034

>>> float(123)

123.0
complex()

转换成复数

>>> complex(123)

(123+0j)

>>> complex(3.1415926)

(3.1415926+0j)
str()

>>> str('123')

'123'
list()

>>> list('123')

['1', '2', '3']
tuple()

>>> tuple('123')

('1', '2', '3')
hex()

变为16进制

>>> hex(10)

'0xa'

>>> hex(10L)

'0xaL'

>>> int(0xaL)

10
eval()

把字符串当成有效表达式求值。

>>> eval('0xaL')

10L

>>> eval("[1,23,'a']")

[1, 23, 'a']
oct()

10进制转成8进制

>>> oct(10)

'012'

>>> oct(8)

'010'
chr()

查ASSIC码对应值:

>>> chr(97)

'a'

>>> chr(65)

'A'
ord()

>>> ord('A')

65
字符串处理的函数:

str.capitalize()

首字母变大写:

capitalize(...)

S.capitalize() -> string

Return a copy of the string S with only its first character

capitalized.

>>> s

'hello'

>>> s.capitalize()

'Hello'
str.replace()

replace(...)

S.replace(old, new[, count]) -> string

Return a copy of string S with all occurrences of substring

old replaced by new.  If the optional argument count is

given, only the first count occurrences are replaced.

>>> s = 'hello,h'

>>> s.replace('h','H')

'Hello,H'
split()

split(...)

S.split([sep [,maxsplit]]) -> list of strings

Return a list of the words in the string S, using sep as the

delimiter string.  If maxsplit is given, at most maxsplit

splits are done. If sep is not specified or is None, any

whitespace string is a separator and empty strings are removed

from the result.

>>> s = 'hello a\tb\nc'

>>> s

'hello a\tb\nc'

>>> s.split()

['hello', 'a', 'b', 'c']

>> s

'hello a\tb\nc'

>>> s.split(' ')

['hello', 'a\tb\nc']

>>> s.split('\t')

['hello a', 'b\nc']

>>> ip = '192.168.1.1'

>>> ip.split('.')

['192', '168', '1', '1']

>>> ip.split('.',1)

['192', '168.1.1']

>>> ip.split('.',2)

['192', '168', '1.1']
join()

>>> range(10)

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> ''.join(str(i) for i in range(10))

'0123456789'

>>> int(''.join(str(i) for i in range(10)))

123456789
string:

import string

string.lower

>>> string.lower('Kfdfa')

'kfdfa'

string.upper

>>> string.upper('Kfdfa')

'KFDFA'

string.capitalize()

>>> string.capitalize('adfafgh')

'Adfafgh' 

string.replace()
string.replace('afkgha','a','A')

'AfkghA'
序列处理函数:

len()

max()

min()

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.

>>> filter(None,range(10))

[1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> def f(x):

...     if x % 2 == 0:

...         return True

...

>>> filter(f,range(10))

[0, 2, 4, 6, 8]

>>> filter(lambda x: x%2==0,range(10))

[0, 2, 4, 6, 8]
zip()

zip(...)

zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)]

Return a list of tuples, where each tuple contains the i-th element

from each of the argument sequences.  The returned list is truncated

in length to the length of the shortest argument sequence.

>>> a1 = [1,3,4]

>>> a2 = ['a','b','c']

>>> zip(a1,a2)

[(1, 'a'), (3, 'b'), (4, 'c')]

>>> dict(zip(a1,a2))

{1: 'a', 3: 'b', 4: 'c'}

>>> dict(zip(a2,a1))

{'a': 1, 'c': 4, 'b': 3}

>>> a3 = ['x','y','z']

>>> zip(a1,a2,a3)

[(1, 'a', 'x'), (3, 'b', 'y'), (4, 'c', 'z')]

>>> zip(a1,a3)

[(1, 'x'), (3, 'y'), (4, 'z')]

>>> a3 = ['x','y']

>>> zip(a1,a3)

[(1, 'x'), (3, 'y')]

>>> zip(a1,a2,a3)

[(1, 'a', 'x'), (3, 'b', 'y')]
map()

map(...)

map(function, sequence[, sequence, ...]) -> list

Return a list of the results of applying the function to the items of

the argument sequence(s).  If more than one sequence is given, the

function is called with an argument list consisting of the corresponding

item of each sequence, substituting None for missing values when not all

sequences have the same length.  If the function is None, return a list of

the items of the sequence (or a list of tuples if more than one sequence).

参数有几个,函数里的参数也应该对应有几个

>>> map(None,a1,a2,a3)

[(1, 'a', 'x'), (3, 'b', 'y'), (4, 'c', None)]

>>> def f(x):

...     return x**2

...

>>> map(f,a1)

[1, 9, 16]

>>> a1

[1, 3, 4]

>>> a1

[1, 3, 4]

>>> a2

[2, 5, 6]

>>> def f(x,y):

...     return x*y

...

>>> map(f,a1,a2)

[2, 15, 24]

>>> map(lambda x,y: x*y ,range(1,10),range(1,10))

[1, 4, 9, 16, 25, 36, 49, 64, 81]
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.

>>> def f(x,y):

...     return x + y

...

>>> reduce(f,range(1,101))

5050
列表表达式:

[i*2 for i in range(10)]

>>> [i*2 for i in range(10)]

[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

>>> [i*2+10 for i in range(10)]

[10, 12, 14, 16, 18, 20, 22, 24, 26, 28]
[i*2+10 for i in range(10) if i%3 == 0]

>>> [i*2+10 for i in range(10) if i%3 == 0]

[10, 16, 22, 28]

相关内容

热门资讯

我国科学家为细胞信号“导航”开... 新华社济南5月31日电(记者张力元)人体细胞犹如一座精密的通信城市,每天都有大量“指令”穿梭传递,调...
极端大风突袭哈尔滨!过山车停摆... 极目新闻记者 詹钘5月31日,受强对流天气影响,哈尔滨国际会展中心体育场相关设施受到损坏,原计划当晚...
三原电缆取得电缆接头连接用防护... 国家知识产权局信息显示,上海三原电缆附件有限公司取得一项名为“一种电缆接头连接用防护结构”的专利,授...
原创 识... 还是那句话,机圈苦大屏久已…… 虽然大屏有大屏的美,但是小屏也有小屏的俏。在大屏旗舰占据主流的手机市...
玄戒技术取得分频电路专利,实现... 国家知识产权局信息显示,北京玄戒技术有限公司取得一项名为“分频电路、分频器、射频芯片和电子设备”的专...
为什么今年香会基调明显变了 5月29日—31日在新加坡举行的第23届香格里拉对话会(简称“香会”),见证着元首引领下大国关系继续...
成本几毛钱、假驱蚊液香精兑水,... 入夏升温,蚊虫进入活跃期,驱蚊防护成为民生刚需,《财经调查》持续接到消费者投诉,他们买到的多款网红驱...
越来越多80后90后,正在丧失... 六一儿童节到来之际,朋友圈里开始出现一种熟悉的热闹。有人晒出零食礼包,有人半开玩笑地向伴侣讨礼物,还...
洋保电子取得用于低温环境的电气... 国家知识产权局信息显示,洋保电子(太仓)有限公司取得一项名为“一种用于低温环境的电气柜”的专利,授权...
中日韩飞手争霸宁波!2026无... 潮新闻客户端 记者 陈冲 通讯员 朱凝 5月31日,2026小遛·无人机竞速世界杯(中国·宁波鄞州站...