美文网首页
什么是模块

什么是模块

作者: 匿隱 | 来源:发表于2019-02-08 13:00 被阅读0次

1.什么是模块

在python中一个py文件就是一个模块

a.系统模块(标准库) - python系统提供的模块(安装解释器的时候已经导入到解释器中了,使用的时候在代码中直接导入)

random模块 - 提供随机数
math模块 - 提供数学运算
json库 - 提供json数据相关操作
re模块 - 提供正则表达式相关操作
socket模块 - 提供python套接字编程
time模块 - 提供和时间相关的操作
threading模块 - 提供和线程相关的操作

b.自定义模块 - 程序员自己创建的py文件

自己写的模块
别人写的模块 - 第三方库 (需要先下载到解释器中,然后才能再代码中导入)

标准库和第三库一般是通过模块提供变量、函数、类

2.怎么使用模块

import 模块名 - 在程序中直接导入指定的模块, 导入后可以使用模块中所有的全局变量(包含了变量、函数和类)
            导入后通过"模块名.变量"来使用模块中的内容

from 模块名 import 变量1, 变量2 - 在程序中导入指定的模块,导入后只能使用import后面的变量
            导入后直接使用变量,不用在前面加'模块名.'

from 模块名 import * - 在程序中直接导入指定的模块, 导入后可以使用模块中所有的全局变量(包含了变量、函数和类)
            导入后直接使用变量,不用在前面加'模块名.'

3.导入模块的实质:

a.不管是使用import还是from-import,导入模块的时候都会执行模块中所有的代码

b.python中一个模块不会重复导入多次。因为导入的时候系统会自动检查当前模块是否已经导入

4.怎么阻止模块中的内容被其他模块执行

将不希望被其他模块执行的代码放在if语句中
如果希望被其他模块使用的代码就放在if语句的外码
(这儿的if语句指的是: if name == 'main')

原理:
每个模块都有一个name属性, 代表模块名。默认情况下它的值是py文件的文件名。
当当前模块正在被执行(直接执行)的时候,模块属性name的值就会变成'main'

1. 系统模块
import random
print(random.randint(10, 100))

print('=======import model1之前=======')
import model1
import model1
print('=======import model1之后=======')
model1.a = 1000
print(model1.a)
print(model1.fun1())

# print('=========from model2 import之前=========')
# from model2 import aa, x
# print('=========from model2 import之后=========')
# print('aa:', aa)
# print(x)
# # print(model2.func2())   # 不能是用model2中除了aa和x的内容

aa = 'hello'
from model2 import *
# 导入model2,并且可以直接使用里面所有的全局变量
print('aa:', aa)
print(x)
func2()

print('==============import model3================')
import model3

# print(model3.a)
# print(model3.b)

5.重命名 - 导入模块的时候可以对模块或者模块中的内容重新命名

import 模块名 as 新模块名
from 模块名 import 变量名1 as 新变量名1, 变量名2, 变量名3 as 新变量名3

# import model4 as newMode
# print(newMode.age)

import threading as TD
name = 100

from model4 import name as yt_name, age as yt_age

print(name)
print(yt_name)
print(yt_age)

相关文章

  • 什么是模块

    1.什么是模块 在python中一个py文件就是一个模块 a.系统模块(标准库) - python系统提供的模块(...

  • 自定义模块

    自定义模块 all模块 什么是模块 什么是包 name

  • Python-Loggin模块

    logging模块 什么是logging模块 logging模块是python提供的用于记录日志的模块 为什么需要...

  • 什么是模块,什么是组件

    相同:都是基于功能划分的单位。比如说完成网络功能的组件、模块、完成统计功能的组件、模块; 这二者没有上下级的包含关...

  • 【Nest 极速指南】进阶篇之 Module

    这篇文章你会学习到: 什么是 Module 功能模块 共享模块 模块重新导出 依赖注入全局模块动态模块 什么是 M...

  • 模块与包

    一,模块 1, 什么是模块? 2,为什么用模块? 3,模块的使用 1) 使用 2) 示例 2.1) 模块基础使用 ...

  • 14、python常用模块

    常用模块 认识模块 什么是模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文...

  • 前端基础(问答29)

    keywords: 模块化、AMD、CMD、CommonJS。 为什么要使用模块化? 什么是模块?模块就是对实现特...

  • 前端面试2021-006

    1、什么是模块化?什么是模块化开发? 模块化是将项目中不同的功能拆分成多个独立的模块,通过模块之间的互相组合完成一...

  • 前端模块化

    什么是前端模块化? 前端为什么需要模块化? CommonJS、AMD、ES6、CMD区别是什么? 一、什么是模块化...

网友评论

      本文标题:什么是模块

      本文链接:https://www.haomeiwen.com/subject/brxzdqtx.html