python入门(六)

python函数与模块

一、python函数

1.认识函数

  函数分为系统函数与自定义函数。

 1 #coding=utf-8
 2 '''
 3 Created on 2016年4月19日
 4 
 5 @author: Administrator
 6 '''
 7 #函数的功能
 8 #系统函数
 9 #1.取字符串长度
10 '''
11 a="hello world python!"
12 print len(a)
13 #2.字符串切割
14 a="student"
15 b=a.split("u")
16 print b
17 '''
18 #3.自定义函数
19 '''
20 def a():
21     print "hello"
22     print 777
23 a()
24 '''
25 def function1():
26     a=8
27     print a
28 function1()

2.形参与实参

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��19��
 4 
 5 @author: Administrator
 6 '''
 7 #函数的形参与实参
 8 #形参
 9 '''
10 def function1(a,b):
11     if a>b:
12         print a
13     else:
14         print b
15  
16 '''
17 #实参
18 #function1(1,3)
19 #参数的传递
20 #简单的参数传递
21 '''
22 def function2(a,b):
23     if a>b:
24         print "前面的数大于后面的数"
25     else:
26         print "后面的数大于前面的数"
27 function2(7,8)     
28 '''
29 #赋值传递
30 '''
31 def function3(a,b=8):
32     print a
33     print b
34 function3(1)
35 function3(1,2)
36 '''
37 #关键参数
38 def function4(a=1,b=2,c=3):#初始化
39     print a
40     print b
41     print c
42 function4(2)
43 function4(b=7,c=8)
44 function4(5,b=8,c=9)
45 function4(b=2,c=1,a=0)
46 #注意参数不能冲突
47 #function4(b=2,c=9,6)
48          

3.全局变量与局部变量

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #全局变量与局部变量
 8 #局部变量
 9 '''
10 def func2(a):
11     i=7
12     print i
13 i=9
14 func2(i)
15 print i
16 '''
17 #全局变量,i在函数外也起作用,但并不是全都一样
18 def func3():
19     global i
20     i=7
21     print i
22 #global i
23 i=9
24 func3()
25 print i
26 i=9
27 print i

4.函数的使用与返回值

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #函数的使用与返回值
 8 #函数的调用
 9 '''
10 def a():
11     i=1
12     print i
13 a()
14 '''
15 #函数返回值
16 #一个返回值
17 '''
18 def test():
19     i=7
20     return i
21 print test()
22 '''
23 #多个返回值,元组的形式存储多个返回值
24 def test2(i,j):
25     k=i*j
26     return i,j,k
27 x=test2(2,5)
28 print x
29 y,z,m=test2(2, 5)
30 print y
31 print m

5.文档字符串

  文档字符串作用:解决函数杂乱问题。

  文档字符串的使用方法:

  1.为每个函数加文档说明
  2.编写文档字符串
    第一行写函数功能
    第二行空开。
    第三行写具体功能。
  句子末尾使用句号,英文首字母大写。

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #文档字符串
 8 def d(i,j):
 9     '''该函数实现一个乘法的运算。
10     
11     函数返回乘法的运算结果。 '''
12     k=i*j
13     return k
14 #使用函数文档字符串
15 print d.__doc__
16 help(d)

  以上代码运行结果如下:

  文档字符串代码运行结果

二、python模块

1.认识python模块  

   函数实现一项或多项功能的一段程序。
  模块是函数功能的拓展,实现一项或多项功能的程序块。封装了许多功能。
  模块里可以重用多个函数。
  进入python安装目录,lib下,很多文件夹都是模块。

  自定义模块也放在lib下。

  模块的文件目录如下图所示:

                 模块的文件目录示例

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #导入模块
 8 '''
 9 import math
10 print math.pi
11 '''
12 #sys模块
13 import sys
14 #查看版本信息
15 print sys.version
16 #查看目录地址
17 print sys.executable
18 #返回windows版本信息
19 print sys.getwindowsversion()
20 #查到导入的模块
21 print sys.modules.keys()

2.字节编译

   执行Python模块的两种方式:1.先将模块里的内容编译成二进制语言,然后执行二进制语言2.直
  接执行对应模块的二进制语言程序。第二种执行速度快一些。
  密会编译成二进制语言程序的过程叫做字节编译,产生一个与编译模块对应的.pyc文件。.pyc文
  件是经过编译后的模块对应的二进制文件。
  字节编译不是编译。
  import的同时若果没有.pyc文件会自动生成.pyc文件。
  cmd 下编译生成.pyc文件 : python -m compileall 模块名
  pyc文件使用二进制文件查看器可以查看。Binary Viewer
  .pyc文件可以用于反编译

3.from...import语句 

   import只是导入模块,没有导入某个属性或方法。
  导入功能可以使用from...import语句。
  from...import*;导入模块的所有方法。

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #第一种
 8 '''
 9 import sys
10 print sys.version
11 '''
12 #第二种 ,直接调用version方法
13 '''
14 from sys import version
15 print version
16 '''
17 #第三种方法
18 from sys import *
19 print version
20 print executable

4.认识__name__属性

   主函数:调用了其他函数。
  主模块:调用了其他模块的模块。
  一个模块可是主模块也可以是非主模块。
  __name__ 属性可以判断是不是主模块

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #name属性的使用
 8 
 9 #print __name__
10 #name����
11 if __name__=="__main__":
12     print "It's main"
13 else:
14     print "It's not main"
15 
16 #print __name__

5.自定义模块 

  自定义模块分为系统自带模块,不要要定义;自定义模块。
  自定义模块在lib下定义。
  模块定义是变量最好初始化,或者声明参数类型,防止语法错误。

6.dir()函数 

   dir()查看指定功能的模块列表。
  dir()查看指定列表功能。

 1 #coding=utf-8
 2 '''
 3 Created on 2016��4��20��
 4 
 5 @author: Administrator
 6 '''
 7 #dir()查看指定功能的模块列表。
 8 '''
 9 import sys
10 print dir(sys)
11 print sys.dllhandle
12 '''
13 #dir()查看指定列表功能。属性方法的列表,没有数据。
14 '''
15 d=[]
16 print dir(d)
17 '''
18 c=["a","b"]
19 print dir(c)
20 e=()
21 print dir(e)

  以上代码运行结果如下:

dir()函数运行结果

2016-04-20  22:57:15

本性的苏醒,往往在遭遇真实之后。
原文地址:https://www.cnblogs.com/chance88/p/5414848.html