python基础之面向过程编程,模块

面向过程编程

         面向过程的核心是过程,指的是解决问题的步骤,即先干什么再干什么,就好像设计一条流水线。

  优点:复杂的问题流程化,进而简单化

  缺点:可扩展性差,修改流水线的任意一个阶段,都会牵一发而动全身

  应用:扩展性要求不高的场景,典型案例如框架,linux内核,git

 

模块

1.什么是模块?

         模块就是一系列功能的集合体

         常用的模块形式:自定义模块,第三方模块,内置模块

         四种类别:

         ①.使用python编写的.py文件

         ②.把一系列模块组织到一起的含__init__.py文件的文件夹(称之为包)

         ③.已被编译为共享库或DLL的C或C++扩展

         ④.使用C编写并链接到python解释器的内置模块

2.为什么使用模块:

         使用第三方模块和内置模块可以极大地提升开发效率

         使用自定义模块可以使我们的程序更清晰,方便管理,实现功能的重复利用

3.如何使用模块:import ……            from ……  import ……

         在第一次导入模块时会做三件事:

         ①.以模块(被导入模块)为准,创建一个模块的名称空间

         ②.执行模块对应文件代码,将执行过程中产生的名字都丢到模块的名称空间

         ③.在当前执行文件中拿到一个模块名

         注:重复导入不会执行文件

                  被导入模块有独立的名称空间

                  起别名:import time aas tm

                  一行多个:import time,os

         from...import 与import的对比

         唯一的区别就是:使用from...import...则是将spam中的名字直接导入到当前的名称空间中,所以在当前名称空间中,直接使用名字就可以了、无需加前缀

         from...import * 

         注意:大部分情况下我们的python程序不应该使用这种导入方式,因为*你不知道你导入什么名字,很有可能会覆盖掉你之前已经定义的名字。而且可读性极其的差,在交互式环境中导入时没有问题。

4.搜索路径:

         搜索路径的顺序:

         ①.内存中已导入的

         ②.内置模块

         ③.环境变量

5.两种用途:

         ①.脚本:一个文件就是整个程序,用来被执行

         ②.模块:文件中存放着一堆功能,用来被导入使用

  

     当文件被当做脚本执行时:__name__ 等于'__main__'

     当文件被当做模块导入时:__name__等于模块名

6.软件开发规范

 

posted @ 2018-06-15 21:07  luck_L  阅读(208)  评论(0编辑  收藏  举报