Python模块·基础概念
2024-05-21 00:00:49  阅读数 319

一、基本概念

  • 模块是从逻辑上组织python代码的形式
  • 当代码量变得相当大的时候,最好把代码分成一些有组织的代码段,前提是保证它们的 彼此交互
  • 这些代码片段相互间有一定的联系,可能是一个包含数据成员和方法的类,也可能是一组相关但彼此独立的操作函数
  • 人话:一个 .py文件 就是一个python模块

二、导入模块 (import)

  • 使用 import 导入模块
  • 模块属性通过 “模块名.属性” 的方式调用
  • 模块函数通过 “模块名.函数名” 的方式调用
  • 如果仅需要模块中的某些属性,也可以单独导入

常用的导入模块的方法

  • 导入整个模块内容
    例1:import random
    例2:import random, sys
  • 只导入模块中的某些方法
    例如:from random import choice, randint
  • 添加模块的别名
    例如:import random as rd

三、模块加载 (load)

  • 模块在被导入时,会先完整的执行一次模块中的 所有程序
  • 一个模块只被 加载一次,无论它被导入多少次,只加载一次可以 阻止多重导入时,代码被多次执行,如果两个文件相互导入,防止了无限的相互加载
  • 模块加载时,顶层代码会自动执行,所以只将函数放入模块的顶层是最好的编程习惯

四、"__name__"用法

# foo.py
print(__name__)

# bar.py
import foo  # 导入foo.py,会将 foo.py 中的代码完成的执行一次,所以会执行 foo 中 print(__name__)

# 执行结果
foo.py   ->   __main__   当模块文件直接执行时,__name__的值为‘__main__’
bar.py   ->   foo        当模块被另一个文件导入时,__name__的值就是该模块的名字
  • 所以我们以后在 Python 模块中执行代码的标准格式:
  • pychram快捷键:main+tab键
def test():
    ......
if __name__ == "__main__":
    test()