函数分类:
内置函数 |
系统自己定义的方法 |
自定义函数 |
开发者自己写的能完成某一个功能的代码块 |
导入模块(第三方模块) |
在系统和开发者之外别人完成的能实现某一功能的代码块 |
示例脚本:
1
2
3
4
5
6
7
|
#vim Built-in function.py
#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""该脚本是Python内置函数的测试脚本"""
li
=
[
13
,
22
,
6
,
99
,
11
]
name
=
'alex'
print
vars
()
|
#vars()是代表当前模块的所有变量,print vars()打印所有的变量
输出结果:
1
|
{
'name'
:
'alex'
,
'__builtins__'
: <module
'__builtin__'
(built
-
in
)>,
'__file__'
:
'C:/Users/ryan/PycharmProjects/s11day3/Built-in function.py'
,
'__author__'
:
'ryan'
,
'li'
: [
13
,
22
,
6
,
99
,
11
],
'__name__'
:
'__main__'
,
'__package__'
:
None
,
'__doc__'
:
None
}
|
从图上可以看到输出的是一个字典:
1
2
3
|
name:alex
li: [
13
,
22
,
6
,
99
,
11
]
|
是我们自己定义的两个变量,下面的这些函数都是系统内置的函数,具体功能如下
1
2
3
4
5
6
|
__builtins__:<module
'__builtin__'
(built
-
in
)>
__file__:C:
/
Users
/
ryan
/
PycharmProjects
/
s11day3
/
Built
-
in
function.py
__author__:ryan
__name__:__main__
__package__:
None
__doc__:
None
|
从字典的键值对可以发现,
内置函数__file__ 其实是打印运行的脚本本身,即Built-in function.py
内置函数__doc__ 是获取函数或者文件解释的内容,比如我们在文件开始写上注释内容
"""
该脚本是Python内置函数的测试脚本
"""
此时打印__doc__,则可以通过__doc__函数打印出来
C:/Users/ryan/PycharmProjects/s11day3/Built-in function.py
该脚本是Python内置函数的测试脚本
内置函数:__name__ 执行脚本时。脚本中的__name__的值为"__main__",导入模块到脚本中,模块中的__name__的值是模块本身
还是以上面的脚本为例:
1
2
3
4
|
import
coll
print
coll.__name__
print
"###############"
print
__name__
|
输出结果为:
1
2
3
|
coll
###############
__main__
|
可以发现:coll中的__name__内置方法的值等于coll,Built-in function.py中的__name__
等于__main__
即导入模块中的__name__方法值为模块名字,被执行脚本中的__name__方法的值为__main__
在写Python脚本时,一般在结尾会出现如下语句:
1
2
|
if
__name
=
"__main__"
:
函数function()
|
意思是当直接执行脚本的时候,才会调用该函数,如果用其他方法执行(或者导入到其他文件中)函数都不会执行函数function()
常用的函数(方法):
#基础类型级别
1
2
3
4
5
6
7
|
help
()
dir
()
vars
()
type
()
reload
()
id
()
is
|
#计算类别的
1
2
3
4
5
6
7
8
|
cmp
()
abs
()
bool
()
divmod
()
-
-
-
>设计页面分页用该函数,求出商和余数,判断是否加N
max
()
min
()
sum
()
pow
()
-
-
-
>幂运算
|
##################
1
2
3
|
len
()
-
-
-
>求序列长度
all
()
-
-
-
>接收一个序列,判断,如果的值都是真的,那么
all
()返回真,否则返回假,可用于判断用户输入是否为空
any
()
-
-
-
>跟
all
()类似,区别是只要接收的内容中有一个为真,则返回真,否则返回假
|
#编码转换
1
2
|
chr()----->接收一个字符,根据字符求出该字符在ascii码中的数字表示
ord()----->接收一个数字,根据数字求出该数字在ascii码中表示的字母
|
#进制转换
1
2
3
4
5
6
7
8
9
10
|
hex
()
-
-
-
-
-
>十六进制
oct
()
-
-
-
-
-
>八进制
bin
()
-
-
-
-
-
-
>二进制
>>>
hex
(
12
)
'0xc'
>>>
oct
(
12
)
'014'
>>>
bin
(
12
)
'0b1100'
>>>
|
enumerate()------->将传入的列表可以组成字典
1
2
3
4
5
6
7
8
9
10
11
|
>>> li
=
[
11
,
22
,
33
,
44
,
55
,
66
]
>>>
for
k,v
in
enumerate
(li):
...
print
k,v
...
0
11
1
22
2
33
3
44
4
55
5
66
>>>
|
指定数字的起始值,不加1,默认从0开始
1
2
3
4
5
6
7
8
9
10
|
>>>
for
k,v
in
enumerate
(li,
1
):
...
print
k,v
...
1
11
2
22
3
33
4
44
5
55
6
66
>>>
|
常见的函数相关的方法:
1
2
3
4
5
6
7
8
|
print
apply
(Function,(
'aaaa'
))
#执行函数
print
map
(
lambda
x:x
+
1
,[
1
,
2
,
3
,])
#print filter(lambda x:x==1,[1,2,3,4])
#序列
print
reduce
(
lambda
x,y:x
+
y,[
1
,
2
,
3
])
#累加
print
zip
(x,y,z)
|
本文转自027ryan 51CTO博客,原文链接:http://blog.51cto.com/ucode/1717648,如需转载请自行联系原作者