zoukankan      html  css  js  c++  java
  • 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

    本性的苏醒,往往在遭遇真实之后。
  • 相关阅读:
    jsp数据交互二
    jsp数据交互(一)
    JQuery操作DOM
    事件和动画
    Jquery选择器
    Optional容器(jdk1.8)
    java常见集合笔记
    字符串内存占用图解
    单例设计模式
    代码块
  • 原文地址:https://www.cnblogs.com/chance88/p/5414848.html
Copyright © 2011-2022 走看看