跳至正文
View Categories

1 min read

主要内容 #

  1. 模块的定义
  2. 模块的导入
  3. 模块的搜索路径

1. 模块的定义 #

Python 的模块(module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。 模块的作用:
  • 模块让你能够有逻辑地组织你的 Python 代码段。
  • 把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
  • 模块能定义函数,类和变量,模块里也能包含可执行的代码。
  • 一个.py文件里的所有功能可以认为是一个模块。 比如:新建一个文件 lesson_75.py 此时就已经建立了一个模块。 然后可以在文件里写函数,变量等等,如下程序。
    def print_func(param):
          print("hello:", param)
          return param
    
    var_1 = 200
    var_2 = "hello world"

    2. 模块的导入 #

  • 模块定义好之后,使用Python的关键字 import 来导入
  • 语法如下: import module1[, module2,[,…moduleN]] 参数说明: module1[, module2,[,…moduleN]],需要导入的模块,至少需要一个模块 module1,其它模块为可选项 当导入只有一个模块时,可以通过关键字 as 给模块起别名 比如:将模块 module1 起个别名为 md1 import module1 as md1 以下程序,导入上述文件 lesson_75.py 作为模块,并将该模块命名为 le_75
    import lesson_75 as le_75
  • 模块导入之后,如果需使用模块中定义的函数
  • 语法如下: module.function() 参数说明: module:导入的模块 function:模块中的函数 导入模块及使用模块的程序示例如下:
    import lesson_75 as le_75
    print(le_75.print_func("python"))
    print(le_75.var_2)
  • python的关键字 from 可以从模块中只导入指定的部分
  • 语法如下: from module1 import name1[, name2[,…nameN]] 参数说明: module1:需要导入的模块 name1[, name2[,…nameN]]:模块中指定导入的部分,至少一个 例如:
    #只导入lesson_75模块的print_func函数以及var_2变量
    from lesson_75 import print_func, var_2
    print(print_func("python"))
    print(var_2)
    #此时lesson_75中的var_1是不可访问的,比如,执行以下程序会报错:
    #print(var_1)
  • 关键字from和*组合的语句可以从模块中导入全部
  • 语法如下: from module1 import * 参数说明: module1,需要导入的模块 例如,以下程序导入lesson_75模块的全部: 注:此时lesson_75中的全部都是可访问的。 这种声明尽量少用,因为在导入多个模块时容易出现冲突。
    from lesson_75 import *
    print(print_func("python"))
    print(var_2)
    print(var_1)

    3. 模块的搜索路径 #

    当我们导入一个模块时,Python解析器对模块位置的搜索顺序如下: 1. 当前目录; 2. 如果不在当前目录,则搜索Python的安装目录; 3. 如果都找不到,Python会搜索默认路径,可通过如下代码查找 :
    import sys
    print(sys.path)
    4. 如果都找不到,则报ImportError错误。

    4. 小结 #

  • 模块(module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句
  • 关键字from可以从模块中只导入指定的部分
  • 关键字from和*组合的语句可以从模块中导入全部
  • Python解析器对我们导入的模块的位置按指定的顺序进行搜索
  • OJ训练题 #

    1、绩效奖金 – ★
    2、买文具 – ★
    3、桐桐数 – ★
    4、甲乙的年龄 – ★★
    5、松鼠币 – ★★★★