python提供了很多的内置函数,这些内置的函数在某些情况下,可以起到很大的作用,而不需要专门去
写函数实现XX功能,直接使用内置函数就可以实现,下面分别来学习内置函数的使用和案例代码。
1、abs(),该内置函数的作用是绝对值,不管数字是负数还是正数,结果都是正数,见实现的代码
截图:
2、bytes(),把字符串转为bytes,见设置一个原始字符串,转为bytes,并且编码是utf-8,下面来见
string与bytes之间的转换方法,见代码:
1
2
3
4
5
6
|
s
=
'python语言'
print
(
'未转之前:'
,
type
(s))
a
=
bytes(s,encoding
=
'utf-8'
)
print
(
'字符串转为bytes后:'
,a,
type
(a))
b
=
str
(a,encoding
=
'utf-8'
)
print
(
'bytes转为字符串后:'
,b,
type
(b))
|
见执行后的结果,见截图:
3、chr()把数字转换为字母,见截图:
4、ord()刚好与chr()相反,把字母转换为数字,见截图:
使用chr()与ord()可以实现随机的验证码,见实现的代码:
1
2
3
4
5
6
7
|
import
random
li
=
[]
for
i
in
range
(
6
):
r
=
random.randrange(
65
,
91
)
li.append(
chr
(r))
print
(''.join(li))
|
5、eval()字符串转换成表达式并获取结果,见实现的过程以及结果:
6、compile()是把字符串编译成python代码,再由函数eval(),exec()执行,见实现的过程以及代码:
7、dir()可以快速的查看对象提供了那些方法,如查看列表的方法,见截图:
8、help()顾名思义查看帮助,如查看列表的备帮助,见截图:
9、divmod()是整除求余,如97除以10,整除是9,余数是7,见实现的结果:
10、isinstance()判断对象是否是某个类的实例,见实现的代码和实现的结果:
11、filter()函数是过滤,如从列表中过滤出xx来,见实现的代码:
1
2
3
4
5
6
7
8
|
list
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
]
def
f1():
li
=
[]
for
i
in
list
:
if
i>
2
:
li.append(i)
print
(li)
|
如上函数是过滤出列表中大于2的值,过滤后的列表li为3,4,5,6,7,8,9,10,使用filter实现的代码为:
1
2
3
4
5
6
7
|
li
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
]
def
f1(a):
if
a>
2
:
return
True
res
=
filter
(f1,li)
print
(
list
(res))
|
结合匿名函数lambda函数后,实现的过程更加简单,见实现的代码:
1
2
3
4
|
li
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
]
res
=
filter
(
lambda
a:a>
2
,li)
print
(
list
(res))
|
12、map()函数可以实现迭代的增加,如有列表[0,1,2,3,4,5,6,7,8,9],都加10,实现的代码为:
1
2
3
4
5
6
7
8
|
li
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
]
def
f1():
result
=
[]
for
i
in
li:
result.append(i
+
10
)
return
result
print
(f1())
|
使用map函数,实现的代码为:
1
2
3
4
5
6
|
li
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
]
def
f1(a):
return
a
+
10
result
=
map
(f1,li)
print
(
list
(result))
|
结合lambda函数,实现的代码更加精简,见实现的代码:
1
2
3
4
|
li
=
[
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
]
result
=
map
(
lambda
a:a
+
10
,li)
print
(
list
(result))
|
13、globals()代表所有的全局变量,locbals()代表所有的局部变量,见实现的代码和实际输出结果:
14、max()获取最大值,min()获取最小值,sum()获取和,见执行的结果截图:
15、type()查看类型,见结果: