python中的import、from import及import as的区别解析
作者:douguailove 发布时间:2022-10-07 15:56:09
首先介绍一下import和include的区别或者说import相对include的好处:
import导入的内容只会被包含一次,在引入之前会检测是否已经存在该模块,不存在才会被引入,而include是不会做判断的。使用import在递归包含的时候不会出错,不会引起交叉编译的问题。此外,使用include引入头文件对其引入顺序也有一定的要求。
import
import是python提供的用于导入模块的机制,导入是的整个模块的内容。模块可以是py、pyc、pyd,可以是系统自带的,也可以是自定义的。使用语法:#import os
python中所有加载到内存的模块都存放到sys.modules中,在引入一个模块之前,会先在列表中查找是否已经加载了该模块,如果已经加载则只用将模块的名字加入到正在调用import模块的local名字空间中;没有加载则将该模块载入到内存,并存放到sys.modules中。
from import
用于导入一个模块中的某一个部分,比如一个函数或者一个类等。使用语法:from os import path 表示引入os模块中的path
import as
用于引入一个模块的同时为该模块取一个别名。使用语法:import multiprocessing as mp 表示引入multiprocessing模块并取别名为mp,在该文件的后续调用中mp就相当于是multiprocessing。
Python中import的as语法
在Python中,如果import的语句比较长,导致后续引用不方便,可以使用as语法,比如:
import dir1.dir2.mod
那么,后续对mod的引用,都必须是dir1.dir2.mod
dir1.dir2.mod.X
那么,为了简化输入,可以使用as语法:
import dir1.dir2.mod as m
那么,后续对mod的引用,可以直接使用m
m. X
需要注意的是,使用as语法之后,只能通过as后面名字来访问导入的moudle
import mod as m
m.X # OK
mod.X # Error
下面提供as的完整语法格式,import和from都支持:
import modulename as name # 只能通过name来引用
from modulename import attrname as name # 只能通过name来引用
来源:https://blog.csdn.net/guaiguaihenguai/article/details/94488238


猜你喜欢
- 本文实例为大家分享了python五子棋游戏的具体代码,供大家参考,具体内容如下目录简介实现过程结语简介使用python实现pygame版的五
- Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的
- <html> <head> <title>Login</title> <meta ht
- 做 Web 开发少不了要与模板引擎打交道。我陆续也接触了 Python 的不少模板引擎,感觉可以总结一下了。一、首先按照我的熟悉程度列一下:
- 写在前面这篇文章的诞生要感谢MIT 6.284课程。在其中一节课中,谈到了多线程的协同的一些问题,其中就涉及到了channel这个概念,并由
- pandas获取groupby分组里最大值所在的行方法如下面这个DataFrame,按照Mt分组,取出Count最大的那行import pa
- 本文实例为大家分享了vue+element-ui+sortable.js实现表格拖拽的具体代码,供大家参考,具体内容如下效果如下:1.vue
- oracle占用cpu过高怎么处理,本文将介绍有关oracle进程CPU占用率过高的问题,需要了解跟多的朋友可以参考下1:首先使用TOP命令
- HttpRequest.FILES表单上传的文件对象存储在类字典对象request.FILES中,表单格式需为multipart/form-
- 字典的常用方法方便举例,先创建2个字典list_test={"bob":19,"aoa":18,&q
- 如下所示:# -*- coding: utf-8 -*-# 简述:话说有一对可爱的兔子,出生后的第三个月开始,每一月都会生一对小兔子。# 当
- Vue 能监听数组的情况Vue 监听数组和对象的变化(vue2.x)vue 实际上可以监听数组变化,比如:直接 = 赋值data () {
- flask中的sqlalchemy 相比于sqlalchemy封装的更加彻底一些 , 在一些方法上更简单首先import类库:在CODE上查
- 这段时间服务器崩溃2次,一直没有找到原因,今天看到论坛发出的错误信息邮件,想起可能是mysql的默认连接数引起的问题,一查果然,老天,默认
- 关于break/continue这两个关键字在平常的使用过程中一直比较迷糊。好不容易理解了吧,过段时间不使用好像忘记了什么。这个问题也是很多
- 本文实例讲述了Python实现多条件筛选目标数据功能。分享给大家供大家参考,具体如下:python中提供了一些数据过滤功能,可以使用内建函数
- Windows 下从源码编译 PaddlePaddle1.环境准备Windows 10 专业版 (64bit)Python 版本 Pytho
- zipfile模块是python中一个处理压缩文件的模块,解决了不少我们平常需要处理压缩文件的需求。大家还知道Python zipfile
- 本文实例为大家分享了Golang实现断点续传的具体代码,供大家参考,具体内容如下1、将文件pic_src.jpg复制到pic_des.jpg
- 这篇论坛文章(赛迪网技术社区)根据网友的个人实践扼要的讲解了将MySQL 5.0下的数据导入到MySQL 3.23中的具体方法及步骤,详细内