什么是模块

一个 py 文件 就是一个模块。
比如我们py文件中写了很多函数,比如昨天写的生成手机号,生成身份证id 这些函数放在一个py文件中。
在整个开发过程中,需要写很多py文件,
a.py 中定义了 生成手机号, 生成身份证id 的函数
b.py 中使用 a.py 中生成手机号的函数。 这里就需要导入模块。

import 导入

创建模块 (py 文件)

在项目的根目录下创建 myfunc.py
image.png
文件名 命名 myfunc.py
image.png
文件中定义函数

  1. def myf1():
  2. print("hello myf1")
  3. def myf2():
  4. print("hello myf2")

创建另外一个模块(py文件)

在项目的根目录创建文件 mydemo.py
image.png
在 mydemo.py 要使用 myfunc .py 中定义的函数。

  1. # 导入 myfunc 模块
  2. import myfunc
  3. # 调用函数
  4. myfunc.myf1()
  5. myfunc.myf2()

执行,可以看到能够调用到 myfunc 模块中定义的函数。
image.png
使用import 导入 模块的时候,

  1. 导入模块
  2. 使用时候,使用模块名.模块中的函数。

from … import … 方式导入

python中除了使用 import 方式来导入模块。
也支持 from import 的方式来导入。
在项目下创建 mydemo2.py
image.png
使用 from import 方式来导入模块中的方法。

  1. # 只导入 myf1
  2. from myfunc import myf1
  3. # 可以直接调用 函数 (不用写模块名)
  4. myf1()

如果两个函数都想导入。

  1. # 只导入 myf1
  2. from myfunc import myf1,myf2
  3. # 可以直接调用 函数 (不用写模块名)
  4. myf1()
  5. myf2()

image.png
除了上面的写法,也可以直接使用 * 来代替所有

from … import *

  1. # * 表示导入 myfunc 模块中所有定义的函数
  2. from myfunc import *
  3. # 可以直接调用 函数 (不用写模块名)
  4. myf1()
  5. myf2()

比如使用 random 模块的时候,也可导入其中的一个

  1. from random import randint
  2. print(randint(1,10))

模块这个概念在后面做自动化的时候,很多时候都是调用别人已经写好的模块。加这几天学习的 循环,if 以及 基本的数据类型 来做。