Python模块_import语句_from...import 函数名_from ... import *
Python模块:包含了所有定义的函数和变量的文件,后缀名为 .py
将某些方法存放在文件中,当某些脚本 或 交互式需要使用的时候,导入进去。
导入的文件,就称为模块。导入之后就可以使用导入的文件的函数等功能
import math # 导入 math 库 print(math.exp(1) == math.e) # 导入 exp() 和 e # True
import 语句:
import 模块名 或 包:调用方法,使用 模块名.方法
当解释器遇到 import 语句时,如果模块在 搜索路径 中,则模块会被导入
注:搜索路径是解释器进行搜索的所有目录名的一个列表。
在一个 .py 文件中创建函数,在另一个 .py 文件中导入
func.py
# 在 func 模块中定义一个 print_info 函数 def print_info(): print("我是在 func 模块内部的")
test.py
# 导入 func 模块 import func # 调用自定义的模块函数 func.print_info() # 我是在 func 模块内部的
一个模块只会被导入一次,无论使用多少次 import 语句,都只导入一次
from 模块名 import 语句:
from 模块名 import 子模块 或 函数 或 类 或 变量:使用函数调用
导入的不是整个模块,而是 import 后面的函数或变量
注:在调用导入的模块函数使,不使用模块名.函数名 而是 直接使用函数名进行调用
func.py
# 在 func 模块中定义一个 print_info 函数 def print_info(): print("我是在 func 模块内部的") def get_info(): print("获取到了 func 模块的信息")
test.py
# 导入 func 模块 from func import get_info # 调用自定义的模块函数 get_info() # 获取到了 func 模块的信息
注:没有导入 print_info 方法,使用会报错
from 模块名 import * :
使用 函数 或 变量 直接进行使用
将模块内的所有内容都导入到当前的模块中,但是不会将该模块的子模块的所有内容也导入
导入语句遵循如下规则:如果包定义文件 __init__.py 存在一个叫做 __all__ 的列表变量,那么在使用 from package import * 的时候就把这个列表中的所有名字作为包内容导入。
from func import * # 调用自定义的模块函数 print_info() # 我是在 func 模块内部的 get_info() # 获取到了 func 模块的信息
注:不导入 _ 单个下划线开头的变量或方法
2020-02-12