千家信息网

python中的import语句怎么使用

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,本篇内容介绍了"python中的import语句怎么使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成
千家信息网最后更新 2025年01月21日python中的import语句怎么使用

本篇内容介绍了"python中的import语句怎么使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

import语句有什么用?import语句用来导入其他python文件(称为模块module),使用该模块里定义的类、方法或者变量,从而达到代码复用的目的。

格式一:

import 模块名1 [as 别名1], 模块名2 [as 别名2],…

说明:1)将整个模块导入;2)[as 别名]部分可无,取别名简化引用; 3)使用导入模块中的成员的格式:模块名[或别名]. 成员

成员包括属性(变量)或函数。

格式二:

from 模块名 import 成员名1 [as 别名1],成员名2 [as 别名2],…

说明:1)导入模块中的某个成员;2)可以用*代表所有成员,如from 模块名 import *

若导入包中模块,将上面语法中的模块名改为 包名.模块名

提示:import xxx和from xxx import yyy,两者的区别在于:

import xxx,需要通过xxx.yyy的方式使用导入模块中的变量、函数、类等。

from xxx import yyy,可以直接以yyy调用。

例如

import turtleturtle.circle(100)

import turtle as tt.circle(100)

from turtle import *circle(100)

import module_name。即import后直接接模块名。在这种情况下,Python会在两个地方寻找这个模块,第一是sys.path(可通过运行代码import sys; print(sys.path)查看其位置),os这个模块所在的目录就在列表sys.path中,一般安装的Python库的目录都可以在sys.path中找到(前提是要将Python的安装目录添加到电脑的环境变量),所以对于安装好的库,我们直接import即可。第二个地方就是运行文件所在的目录。

要想更深入的了解需要熟悉几个基本概念

模块(module)

Python中,一般情况下,是一个以.py为后缀的文件,其他可作为module的文件类型还有".pyo"、".pyc"、".pyd"、".pyw"、".dll",但Python初学者几乎用不到。他们是属于Python代码载体的最小单元,这样单独存在的文件我们都称之为"模块"。

module能定义函数、类、变量,也能包含可执行的代码。module来源有3种:

①Python内置的模块(标准库);

②第三方模块;

③自定义模块。

包(package)

为避免模块名冲突,Python引入了按目录组织模块的方法,称之为 包(package)。包是含有多个模块的文件夹。

在Python 3.3之前,一个目录想被当成package被导入,必须包含__init__.py文件;而在Python 3.3及以后的版本中,__init__.py文件可以不需要。

包含__init__.py文件的包,__init__.py文件文件可以什么内容都不写,即为空文件,存在即可,相当于一个标记。这种包称为"Regular packages"(普通的包)。

从Python3.3版本开始引入了"Namespace Packages"(命名空间包),这种包没有__init__.py。

绝对导入和相对导入

假设我们的项目(Project)的目录结构如下图所示:

绝对导入

绝对路径要求我们必须从最顶层的文件夹开始,为每个包或每个模块提供出完整详细的导入路径。如:

from package1 import mudule1from package1.module2 import Fxfrom package2 import Cxfrom package2.subpackage1.module5 import Fy

相对导入:

当我们使用相对导入时,需要给出相对与当前位置,想导入资源所在的位置。

相对导入分为"隐式相对导入"和"显式相对导入"两种,比如我们想在package2/module3.py中引用module4模块,我们可以这么写

import module4 # 隐式相对导入from . import module4 # 显式相对导入from package2 import module4 # 绝对导入

代码中.表示当前文件所在的目录,如果是..就表示该目录的上一层目录,三个.、四个.依次类推。可以看出,隐式相对导入相比于显式相对导入无非就是隐含了当前目录这个条件,不过这样会容易引起混乱,所以在PEP 328的时候被正式淘汰,毕竟"Explicit is better than implicit"。

想在package2/module3.py中导入class Cx和function Fy,可以这么写

# package2/module3.pyimport Cx # 隐式相对导入from . import Cx # 显式相对导入from .subpackage1.module5 import Fy

"python中的import语句怎么使用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

模块 文件 目录 别名 成员 代码 变量 语句 所在 位置 内容 函数 情况 格式 地方 就是 文件夹 方法 更多 版本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 闻政绩效管理系统软件开发部 网络安全专业能进大厂吗 音乐 代理服务器 网络安全自查自纠开展情况 怎么查看服务器硬盘的工作模式 榆次商场触控答题软件开发公司 国内访问国外的服务器 河北通用软件开发价格对比 如何从服务器端口读取数据 网络安全统筹协同 自考数据库哪个软件能练习 网络安全设备厂家精通网络吗 网络安全装置部署方式种类 BLOG模板软件开发 网络安全与执法专业电脑推荐 互联网科技痛点 存储服务器能当群晖么 北京冬奥会网络安全工作总结 虹口区管理软件开发报价表 软件开发常用名词解释 提升网络安全意识心得 网络技术公司的英文 数据库数据管理实训报告 计算机网络技术专业宣传标语 数据库系统经历了哪几个阶段 网络安全扫描开发 通信与网络安全论文 分布式数据库 两个阶段 忻州煤科网络技术服务站 现代语言学被什么数据库收录
0