大鹏

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

第十三章 模块

本章内容:

  1、模块就是程序
  2、命名空间
  3、导入模块
  4、__name__='__main__
  5、收索路径
  6、包
  7、合理利用官方帮助文档
  8、作业
  9、扩展阅读

++++++++++++++++++++++++++++++++++

 

1、模块就是程序

容器,例如列表、元组、字符串、字典等,这些是对数据的封装。

函数,是对语句的封装;

类,是对方法和属性的封装,也就是对函数和数据的封装

模块,就是平时写的任何代码,保存的每一个.py结尾的文件,都是一个独立的模块

 

2、命名空间

命名空间表示标识符的可见范围。一个标识符可以在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。

在python中,每一个模块都会维护一个独立的命名空间,我们应该将模块名加上,才能够正常使用模块中的函数:

def hi():
    print("Hi everyone,I love Fishc.com")


import hello

print(hello.hi())


#Hi everyone,I love Fishc.com

 

3、导入模块

1、import 模块名

#保存文件名为 fish
def c2f(cel):
    fah =cel * 1.8 +32
    return fah

def f2c(fah):
    cel = (fah -32) / 1.8
    return cel


#导入模块
import  fish
print('32摄氏度 = %.2f华氏度'%fish.c2f(32))
print("99华氏度 = %.2f摄氏度"%fish.f2c(99))

 

2、from 模块名 import 函数名

#导入函数名
from fish import c2f,f2c   #导入函数
from fish import  *   # 导入模块的所有的命名空间
print('32摄氏度 = %.2f华氏度'%fish.c2f(32))
print("99华氏度 = %.2f摄氏度"%fish.f2c(99))

 

3、import 模块名 as 新名字

#取别名
import  fish as tc 
print('32摄氏度 = %.2f华氏度'%fish.c2f(32))
print("99华氏度 = %.2f摄氏度"%fish.f2c(99))

 

参看:python import 模块导入

 

4、__name__='__main__

参看:模块手动执行和模块导入执行

 

 

5、收索路径

import  sys

a = sys.path
print(a)

sys.path.append('C:\\Python34\\test\\M1')  # 添加路径
sys.path.insert(0,'C:\\Python34\\test\\M1')  # 添加路径

#存放代码,最好放在site-packages
# 'D:\\Program Files\\Python37\\lib\\site-packages'  

 

 

6、包

创建一个包的具体操作如下:

1、创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;

2、在文件夹中创建一个__init__.py的模块文件,内容可以为空;

(备注:必须在每一个包目录下建立一个__init__.py的模块,可以是空文件,也可以写一些初始化代码。这是规定,告诉python将这个目录当成一个包来处理)

3、将相关的模块放入文件夹中

#将文件fish.py存放在test文件夹中
import  test.fish  as tc 

 

7、合理利用官方帮助文档

import timeit

#第一道
print(timeit.__doc__)   #查看模块的简介

#第二道
#使用dir()函数可以查询到该模块定义了那些变量、函数和类
dir(timeit)

#使用__all__属性可以直接获取可调用接口的信息
print(timeit.__all__)


"""
注意:
1、不是所有的模块都由__all__属性;
2、如果一个模块设置了__all__属性,那么"from timeit import *"  只会导入__all__属性这个列表里的名字,其他的不导入
3、如果没有设置__all__那么"from timeit import *"  ,就会把所有不以下划线开头的名字都导入
"""

#第三道
#__file__的属性指明了该模块的源代码位置
print(timeit.__file__)   # 查看


#最后一道杀手锏
help(timeit)

最后小甲鱼建议:1、要不断的写代码;2、阅读优秀的代码;3、看小甲鱼的书和视频(O(∩_∩)O哈哈~)

 

查看帮助文档 :

 

 

 

8、作业

[课后作业] 第050讲:模块:模块就是程序 | 课后测试题

[课后作业] 第051讲:__name__属性、搜索路径和包 | 课后测试题及答案

[课后作业] 第052讲:像极客一样去思考 | 课后测试题及答案

 

9、扩展阅读

模块与包

 

posted on 2018-12-18 21:52  pf42280  阅读(217)  评论(0)    收藏  举报