如何解决Python编程中新手遇到的导入包难题?

2026-05-24 15:491阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计727个文字,预计阅读时间需要3分钟。

如何解决Python编程中新手遇到的导入包难题?

包和模块+首先清理这两个概念,在Python中,一个文件夹中包含__init__.py文件+这个文件是包的初始化文件,在你导入包或其下面的模块时,这个文件会被最先运行。

包和模块

首先要弄清这两个概念, 在python 中 一个文件夹中包含​​__init__.py​​ 文件(这个文件是包的初始化文件,在你导入包或包下面的模块的时候,这个文件会最开始运行),就会被python看做一个包, 包中包含模块, 模块就是python的文件, 例如​​xxx.py​​。

import

如果单独使用 import导入, 那么 import 可以有这几种格式:

import 包
import 包.模块
import 包.子包.模块

他们导入方式对应的调用方式分别为(假设调用模块下面的函数):

包.模块.函数()
包.模块.函数()
包.子包.模块.函数()

也就是说, 当使用​​import​​​导入的时候,要使用模块一个函数需要将 ​​import​​​ 后面的东西都加上才可以使用。
当然这里的举的例子是​​​函数()​​​其实也可以是模块中的​​全局变量​​​ 或​​类​​ 使用 import 导入有一条注意:不能直接导入模块下面的东西(函数,类,全局变量), 最多只能到模块

from import

这种导入可以减少你调用模块下函数的代码量
from import 可以有一下几种格式

from 包 import 模块
from 包.模块 import 函数
from 包.子包.模块. import 函数
from 包 import 子包

他们导入方式对应的调用方式分别为(假设调用模块下面的函数):

模块.函数()
函数()
函数()
子包.模块.函数()

调用方式遵循我上面说的 使用​​import​​​导入时, 调用其模块中函数调用规则, 也就是调用其中函数,要将 ​​import​​​ 后面的当做前缀都写一遍​​xx.xxx.xx.函数()​​​, 而例子中 ​​from 包.模块 import 函数​​​ 就可以直接调用函数, 所以 调用的时候是根据 ​​import​​​ 内容决定的。
使用​​​from import​​​ 导入还有一个规则, 就是 ​​import​​​ 只能导入一个东西, 或模块, 或函数,所以 ​​from 包 import 模块.函数​​​这种写法是错误的, 也就是​​from import​​​ 的 ​​import​​​后面不能有​​.​​

总结

1. 在导入的时候 无论是from 还是 import , 模块后面都不可以与模块中内容(全局变量,类,函数)进行.连接, 调用的时候可以
2. 调用的时候, 前缀要加上 import 后面的内容
3. from import 这种导入模式中 import 后面只能是一个层级, import 后面不能有 .


作者:Hello_wshuo​

如何解决Python编程中新手遇到的导入包难题?


本文共计727个文字,预计阅读时间需要3分钟。

如何解决Python编程中新手遇到的导入包难题?

包和模块+首先清理这两个概念,在Python中,一个文件夹中包含__init__.py文件+这个文件是包的初始化文件,在你导入包或其下面的模块时,这个文件会被最先运行。

包和模块

首先要弄清这两个概念, 在python 中 一个文件夹中包含​​__init__.py​​ 文件(这个文件是包的初始化文件,在你导入包或包下面的模块的时候,这个文件会最开始运行),就会被python看做一个包, 包中包含模块, 模块就是python的文件, 例如​​xxx.py​​。

import

如果单独使用 import导入, 那么 import 可以有这几种格式:

import 包
import 包.模块
import 包.子包.模块

他们导入方式对应的调用方式分别为(假设调用模块下面的函数):

包.模块.函数()
包.模块.函数()
包.子包.模块.函数()

也就是说, 当使用​​import​​​导入的时候,要使用模块一个函数需要将 ​​import​​​ 后面的东西都加上才可以使用。
当然这里的举的例子是​​​函数()​​​其实也可以是模块中的​​全局变量​​​ 或​​类​​ 使用 import 导入有一条注意:不能直接导入模块下面的东西(函数,类,全局变量), 最多只能到模块

from import

这种导入可以减少你调用模块下函数的代码量
from import 可以有一下几种格式

from 包 import 模块
from 包.模块 import 函数
from 包.子包.模块. import 函数
from 包 import 子包

他们导入方式对应的调用方式分别为(假设调用模块下面的函数):

模块.函数()
函数()
函数()
子包.模块.函数()

调用方式遵循我上面说的 使用​​import​​​导入时, 调用其模块中函数调用规则, 也就是调用其中函数,要将 ​​import​​​ 后面的当做前缀都写一遍​​xx.xxx.xx.函数()​​​, 而例子中 ​​from 包.模块 import 函数​​​ 就可以直接调用函数, 所以 调用的时候是根据 ​​import​​​ 内容决定的。
使用​​​from import​​​ 导入还有一个规则, 就是 ​​import​​​ 只能导入一个东西, 或模块, 或函数,所以 ​​from 包 import 模块.函数​​​这种写法是错误的, 也就是​​from import​​​ 的 ​​import​​​后面不能有​​.​​

总结

1. 在导入的时候 无论是from 还是 import , 模块后面都不可以与模块中内容(全局变量,类,函数)进行.连接, 调用的时候可以
2. 调用的时候, 前缀要加上 import 后面的内容
3. from import 这种导入模式中 import 后面只能是一个层级, import 后面不能有 .


作者:Hello_wshuo​

如何解决Python编程中新手遇到的导入包难题?