函数分类:
内置函数 | 系统自己定义的方法 |
自定义函数 | 开发者自己写的能完成某一个功能的代码块 |
导入模块(第三方模块) | 在系统和开发者之外别人完成的能实现某一功能的代码块 |
示例脚本:
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,如需转载请自行联系原作者