[ 转]Python模块(二)import和from...import的区别

Python import 和 from … import 的主要区别 适用于需要使用整个模块,避免命名冲突,提高代码可读性。:适用于只需要模块中部分对象的情况,简化代码,但需注意命名冲突。:尽量避免使用,可能导致命名冲突和代码混淆。选择适合的导入方式取决于具体的使用场景和需求,通常推荐在需要避免命名冲突和保持代码清晰时使用import语句,在需要简化代码和使用特定对象时使用语句。 阅读详情

Python模块(二)import和from...import的区别

听语音

  • 原创
  • |
  • 浏览:2975
  • |
  • 更新:2018-04-02 13:02
  • |
  • 标签:PYTHON 
  • Python模块(二)import和from...import的区别1

  • Python模块(二)import和from...import的区别2

  • Python模块(二)import和from...import的区别3

  • Python模块(二)import和from...import的区别4

  • Python模块(二)import和from...import的区别5

  • Python模块(二)import和from...import的区别6

  • Python模块(二)import和from...import的区别7

分步阅读

本篇经验介绍import和from...import的区别

一.import

  1. 1

    import导入的时,需要使用模块名的限定。

    举个例子,我们首先创建一个md.py文件,里面有一个函数

    Python模块(二)import和from...import的区别

  2. 2

    然后在1.py文件中引用这个函数。

    注意,我们需要使用md.的方式进行调用。如果不加模块名限定,就会报错

    Python模块(二)import和from...import的区别

  3. 3

    比如这样,我们把模块限定名去掉,就报错了

    Python模块(二)import和from...import的区别

    Python模块(二)import和from...import的区别

    END

二.from...import

  1. 而from  import则不需要加入模块名的限定。看如下例子,正确打印了结果。

    Python模块(二)import和from...import的区别

    Python模块(二)import和from...import的区别

  2. from md import *的意思是,导入了这个模块的所有。

    我们可以只导入指定的部分到当前命名空间中。

    如下图所示,我们修改了md模块,里面有3个函数

    Python模块(二)import和from...import的区别

  3. 我们修改了1.py文件,导入了其中的2个函数。看运行结果,最后一句报错了。因为我们并没有导入全部的文件,只导入了2个函数而已。

    Python模块(二)import和from...import的区别

    Python模块(二)import和from...import的区别

  4. 我们现在,新增了一个文件md2.py,里面又写了一个alsp的函数

    Python模块(二)import和from...import的区别

  5. 我们在1.py中,同时引用了md和md2模块,使用from import的方式

    Python模块(二)import和from...import的区别

  6. 运行结果如下,第二句的import覆盖了第一句的,执行的是第二句的md2模块的alsp函数

    Python模块(二)import和from...import的区别

 

https://jingyan.baidu.com/article/15622f242e15b6fdfcbea5b5.html

Python模块导入指南:import, from...import的区别 本文深入探讨了Python中import和from...import两种模块导入方式的区别、优缺点及适用场景。import导入整个模块,访问时需加模块名前缀,避免命名冲突,适合需要频繁使用多个模块成员的情况;from...import则直接导入特定成员,代码更简洁,但可能导致命名空间污染,适合仅需使用少数模块成员的情况。文章还通过性能测试、命名空间污染、循环导入等问题,提供了最佳实践建议,如避免使用from module import *、处理循环导入、延迟导入等。最后,文章总结了在实际项目中的导入策略,强 阅读详情

相关推荐

10BASE-T1S协议中的PLCA机制:实现无碰撞网络传输的关键

本文深入解析了10BASE-T1S协议中的PLCA(物理层冲突避免)机制。作为IEEE 802.3cg标准的关键部分,PLCA通过循环调度与机会传递,从根源上避免了网络碰撞,为工业与汽车等场景提供了确定性的低延迟传输保障,是实现可靠实时通信的核心技术。

weixin_29250403的博客 209

MFC调用python文件

MFC调用python文件 1、首先要在要调用python的.cpp文件中添加头文件#include <Python.h> 2、添加头文件后发现会报错,no such file xxx,这是因为没有添加python头文件的包含目录,要添加如下两个路径 ①python所在的include路径(填在序号2的地方) ②python所在的libs路径(填在序号4的地方) 注意:如果想要使用相对路径可以用../xxx/include, 相对路径:以工程文件XXX.vcproj为起点进行计算的路径..

qq_43309940的博客 2036

图解说明JLink驱动与目标板电源匹配的关键细节

深入讲解JLink驱动安装及使用过程中,如何正确匹配目标板电源,避免常见通信故障。通过图解方式清晰展示关键连接细节,确保调试稳定可靠,是嵌入式开发中不可或缺的实战经验分享。

weixin_42173218的博客 431

python三方库 importlib导入API用法 相对导入 绝对导入

说明:如果需要跨越多个文件层级进行导入,只需要使用多个句点即可。 PEP328建议相对层级不超过两层 导入注意项(这点很重要,需要反复揣摩且测试) 如果是绝对导入,一个模块只能导入自身的子模块或和它的顶层模块同级别的模块及其子模块 如果是相对导入,一个模块必须有包结构且只能导入它的顶层模块内部的模块 如果一个模块被直接运行,则它自己为顶层模块,不存在层次结构,所以找不到其他的相对路径,如果一个模块是被其他模块导入的,则它存在层次结构,但也无法导入与顶层模块同级别的模块 所谓的包,就是包含 __in

studyvcmfc的专栏 700

无人机频谱侦测与智能识别技术实战解析

本文深入解析无人机频谱侦测与智能识别技术实战应用,涵盖无线电侦测、信号处理和定位技术等核心内容。通过频谱分析、特征提取和机器学习算法优化,实现高精度无人机识别与定位,并分享复杂环境下的应对策略和系统集成经验。

weixin_28419039的博客 488

告别乱码!手把手教你用docx4j实现Word转PDF(附完整中文字体配置)

本文详细介绍了如何使用纯Java库docx4j实现Word到PDF的精准转换,并重点解决了中文乱码这一核心痛点。文章提供了从环境搭建、核心代码实现到中文字体配置的完整教程,特别针对Linux服务器部署场景,给出了详细的字体安装与映射方案,确保跨平台转换的稳定性和准确性。

nokia的博客 1151

MFC Python混合编程(以发送邮件为例)

1. Python代码 import smtplib from email.header import Header from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.mime.application import MIMEApplication def ...

kuangbao9的博客 899

LVDS接口总结--(0)LVDS硬件电路接口

xilinx LVDS接口硬件总结

zidan1412的博客 9719

python中的import、from import以及import as的区别

首先介绍一下import和include的区别或者说import相对include的好处: import导入的内容只会被包含一次,在引入之前会检测是否已经存在该模块,不存在才会被引入,而include是不会做判断的。使用import在递归包含的时候不会出错,不会引起交叉编译的问题。 此外,使用include引入头文件对其引入顺序也有一定的要求。 import import是python提供的...

半暖的博客 3万+

网规第三版:第4章网络资源设备(完结)

第 4 章 网络资源设备 调整内容: 更新主流网络设备(交换机、路由器、防火墙)的技术参数与选型标准 增加国产化网络设备与信创产品的相关内容 精简已淘汰的设备类型与技术指标

鹿鸣天涯 267

一种低照度目标检测新策略:IAT集成YOLOv8实现暗光与雾霾环境下的性能优化【附核心实战代码】

随着深度学习和计算机视觉的快速发展,目标检测模型在各个领域中的应用不断扩展,特别是在低照度环境下的视觉任务。YOLOv8作为当前最先进的目标检测模型之一,在高亮度和良好照明条件下表现出色,但在低照度环境下的性能存在一定的不足。为了解决这一问题,我们提出了一种轻量级的低照度图像增强网络(IAT)来改进YOLOv8的暗光检测能力。本篇文章将深入探讨这一创新改进,并附带代码实现,帮助大家更好地理解这一技术的应用和效果。

一键难忘的博客 3498

Python 中的 import 与 from import 区别

对不少 Python 初学者来说,Python 导入其他模块的方式让他们很难理解。什么时候用import xxx?什么时候用from xxx import yyy?什么时候用from xxx.yyy import zzz?什么时候用from xxx import *? 系统自带的模块 以正则表达式模块为例,我们经常这样写代码: import re target = 'abc1234xyz' re.search('(\d+)', target) 但有时候,你可能会看到某些人这样写代码: fr

skydust1979的博客 1万+

QT应用编程: Win10系统下QT5.12搭建Android开发环境(配件齐全)

在win10系统下,搭建QT5.12.6 的Android开发环境。

7687

Python3基础之import和from import的用法和区别

一个 python 的文件就叫做模块(module),如 xxx.py。模块就是一组功能的集合体,我们的程序可以导入模块来复用模块里的功能。

weixin_44867191的博客 2万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

python中import和from详解区别

python模块和包

weixin_44992737的博客 7625

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

注意import和from import 的区别

注意python中import和from import 的区别 首先明确:尽量不要为了图省事使用from xxx import * python中有两种导入模块的方式,一种是import xxx,另一种是from xxx import yyy,两者的区别在于,第一种仅仅导入一个模块,没有在当前的命名空间中导入变量,需要通过xxx.yyy的方式使用导入模块中的变量、函数、类等; 第二种则将模块中的变...

冰冻世界 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

python里import和from import的区别

Python 中 import和from import的区别

xkukeer的博客 1万+

Python模块:from-import与import的区别和陷阱

本文深入分析了Python中import和from import的本质区别与常见陷阱。关键点包括:import导入整个模块对象,通过模块名访问成员,能获取最新值;from import导入的是特定名称的引用,相当于创建局部变量,不会随源模块更新而同步变化。文章通过实例展示了两种方式在命名空间、变量绑定、模块重载和循环导入等方面的差异,并给出了使用建议:优先使用import确保安全性和清晰性,仅在需要简洁时谨慎使用from import,且注意其"快照式"特性可能导致的值不更新问题。

输出倒逼输入,写作驱动成长。 1万+

python中import和from import的区别

前些日子看到知乎上有人把import比作一辆车,把from import比作车子里面的矿泉水 我觉得这比喻还可以,但是首先得确定你是一个缺水的人,你渴你正要矿泉水,而不是什么咖啡牛奶 先举一个大家都清楚的例子: >>> import datetime >>> print(datetime.datetime.now()) 2018-05-05 22...

lcczzu的专栏 8423

Python中from…import * 语句与 import 区别

1.定义: import 模块:导入一个模块;注:相当于导入的是一个文件夹,是个相对路径。 from…import:导入了一个模块中的一个函数;注:相当于导入的是一个文件夹中的文件,是个绝对路径。 所以使用上的的区别是当引用文件时是: import //模块.函数 from…import // 直接使用函数名使用就可以了 所以 from…import *:是把一个模块中所有函数...

Struggle_linzi的专栏 7097

Python中 import 和 from...import 和 from...import * 的区别

刚开始学习Python,查看别人代码时发现import有三种使用方法,分别是 import 模块名 和 from 模块名 import XX 和 from 模块名 import * ,对此感到有些疑惑,不知道什么情况该用哪一种,因此参考网上资料整理了一下。 import 模块:导入一个模块,注:相当于导入的是一个文件夹,每次使用模块中的函数都要确定引用 from…import XX:导入的是一个模块中的一个函数;注:相当于导入的是一个文件夹中的文件,是绝对路径 from…import * :是把一个模块中所

hello_sunofbeach的博客 5259

python中import 和 from import 的区别

import与from import有相同点,也有很大区别。用于包与用于模块时也有差别。

any1where的博客 4855

python包导入方式import 和from import的区别和一些注意事项

一、import和from import的区别: import 只能导入模块、子包、包, 而不能导入模块中的类、函数、变量等 from import 可以导入模块、子包、包、类、函数、变量以及在包的__init__.py中已经导入的名字 ps: 但是两者都可以用as给导入的名字重命名 二、包导入的注意事项 不能在导入的路径中使用已经导入过的名字, 比如 import numpy as np...

caixiong的博客 7727

Python中import和from import的区别

目录 1.系统自带模块库 2.第三方库 在Python编程中经常会使用到import,那么什么时候使用import xxx?什么时候使用from xxx import mmm?什么时候使用from xxx.mmm import yyy?什么时候使用from mmm import *??? 1.系统自带模块库 首先来看一下系统自带的模块,以正则表达式为例,经常写代码: import re example = '1am24tr'; re.search('(\d+)',example); 有的时

jk_101的博客 3217
上一篇: python __init__ (初始化对象时候自动调用) 与代表class对象自身的self
下一篇: SyntaxError: (unicode error) ‘unicodeescape‘ codec can‘t decode bytes in positio n 131-135: truncate
火星种萝卜
博客等级 码龄19年 438粉丝 304原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值