13 Python - 模块和包的使用

模块和包的使用

一.模块

1.什么是模块?

  • 一个模块就是一个py文件,py文件的文件名就是模块名

2.在一个模块中使用另外一个模块的内容

①哪些能用:所有在指定if语句外的全局变量

②怎么使用:需要先导入模块

语法:
import 模块名     -     导入后可以使用所有的全局变量;以 '模块名.变量' 来使用变量
from 模块名 import 变量1, 变量2, 变量3,...    -  导入后可以使用指定的变量; 直接使用变量
from 模块名 import *     -  导入后可以使用所有的全局变量; 直接使用变量 (不推荐使用)

import 模块名 as 新模块名    -  导入模块的时候给模块取别名,以后使用模块的时候使用新名字
from 模块名 import 变量1 as 新变量1, 变量2 as 新变量2, 变量3,...    -  给指定变量取别名
二.导入模块

1.导入模块的原理

当使用import>或者from-import> 导入模块的时候,系统会自动将被导入的模块中所有的代码都执行一遍

2.重复导入同一个模块,模块中的内容只会执行一次

import test2
import test2   模块中的内容只会执行一次

面试题:说说import> 和 include >的区别?>

import> 比起 include> 的好处:不会引起交叉编译

import>确定一个文件只能被导入一次,这使我们在递归包含中不会出现问题

3.怎么选择性的执行被导入的内容?

在被导入的模块中添加if语句,将不希望被其他模块执行的代码放到if语句中

if 语句:
if __name__ == '__main__':
    不希望被其他模块执行的代码
原理:
每个模块都有一个属性:__name__,这个属性是用来保存当前模块的名字;__name__默认值就是模块名(模块对应的py文件的文件名)。当我们直接执行某个模块的时候,这个模块的 __name__属性就会自动变成 '__main__'
三.包的使用

1.什么是包?

包就是一种特殊的文件夹

  • 里面的文件都是py文件
  • 自带一个__init__.py的文件(这个文件的内容可以为空,用于标识当前文件夹是一个包)

2.导入方式

这里我们用代码举例说明:

# 先在当前文件夹的目录下创建一个包shape
# 创建一个circle.py文件 , 文件中我们封装两个函数求圆的周长和面积
pi = 3.1415926
def diameter(r):
    """
    求圆的周长
    :param r: 半径
    :return: 周长
    """
    return 2 * pi * r
def area(r):
    return pi * r * r

通过包直接导入模块

from shape import circle
r = 10
print(circle.area(r))

通过包导入模块中的数据

from shape.circle import arer
print(area(10))
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值