`
cuixuxucui
  • 浏览: 350806 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

简单说说python import与from...import....

 
阅读更多

http://www.iplaypython.com/jinjie/from-import.html

在前面的文章中给大家讲解过一种导入模块的方法 import ,今天介绍一种经常会使用到的方法 from import。

比如我们导入一个数学计算的模块 math:

>>> import math

>>> print math

<module 'math' (built-in)>

>>>

>>> print math.pi #导出圆周率的值

3.14159265359

>>>

我们导入math模块,在python模块学习中我们会知道,这样做会得到名math的对象,这个模块对象包含了pi这样的常量,以及一些其它的方法。

我们如果直接访问 pi,不加math这个前缀会发生什么情况呢?

>>> print pi

Traceback (most recent call last):

  File "<pyshell#6>", line 1, in <module>

    print pi

NameError: name 'pi' is not defined

>>>

程序抛出了一个名为“NameError”的错误,这样的python 错误处理要怎么解决?这个时候我们可以用from这个方法来实现可以直接用pi这个方法:

>>> from math import pi

>>> print pi

3.141592653589793

>>>

这样我们就可以直接输出 pi的值了,而不会报错,不需要加那个模块名加句号。

有的朋友可能感觉还是比较麻烦,有会有更快速、更省事的Python模块导入方法呢?

答案是:还真有。

>>> from math import *

>>>

>>> pi

3.141592653589793

>>> cos(pi)

-1.0

>>>

这样就不需要一个一样导入模块内部的方法了,一次性的将所有python 调用函数方法导入,好处是代码看起来非常简洁,但是如果同时导入多个模块,要考虑模块方法名冲突等这些问题,至于怎么样使用,要看你的使用环境 。

总之,from方法导入模块,是你以后编程过程中经常会用到的。

分享到:
评论

相关推荐

    import, from...import,import...as的区别.pdf

    本文将详细解释在Python中使用import语句导入模块的几种不同方式,包括直接导入(import)、从模块中导入特定部分(from...import)以及导入模块时为其设置别名(import...as)的区别和用法。 首先,直接使用import...

    Python import用法以及与from...import的区别

    ### Python `import` 用法及与 `from...import` 的区别 在 Python 编程中,`import` 和 `from...import` 是两种常用的模块导入方式。它们可以帮助程序员引入其他 Python 文件(即模块)中定义的功能,如函数、类等...

    详解Python中的from..import绝对导入语句

    ### 详解Python中的`from ... import`绝对导入语句 #### 概述 在Python编程中,模块(module)和包(package)是组织代码的重要方式。为了在不同的模块或包之间共享代码,Python提供了导入(import)机制。导入...

    python import

    在Python编程中,`import`语句是用于引入其他模块或包的关键字,这使得代码可以复用和组织。当你需要在不同的文件夹结构中导入`.py`文件时,了解正确的导入策略至关重要。以下是一些关于如何在Python中正确导入跨...

    python-import的规则.docx

    Python的import语句是程序组织和模块化的核心,它允许我们从不同的文件中引入功能,以便在当前脚本中重用代码。理解import的工作机制对于编写高效、可维护的Python程序至关重要。 首先,我们要理解模块搜索路径。当...

    lstm autoencoder keras 旋转器械异常检测.zip

    数据说明 ...from tensorflow.python.keras.layers.convolutional import Conv1D, UpSampling1D from tensorflow.python.keras.layers.convolutional import MaxPooling1D from tensorflow.python.keras.m

    python中import与from方法总结(推荐)

    模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from)。 包(package): 包是更大的组织单位,用来组织区别管理多个模块文件。 import 用来导入模块 from 用于从模块...

    Python编程入门教程.pptx

    Python编程入门教程.pptx Python编程入门教程.pptx Python编程入门教程.pptx

    python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】

    from email.mime.text import MIMEText from email.utils import formataddr host = 'smtp.263.net' SUBJECT = "test smtplib" TO = "xx@xx.com" FROM = "xxxx@xx.com" text = "content" BODY = "\r\n".join(( ...

    import和from.zip

    Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License...

    PyPI 官网下载 | autoimport-0.2.2.tar.gz

    《PyPI官网下载 | autoimport-0.2.2.tar.gz——Python库解析与应用》 在Python编程中,PyPI(Python Package Index)是官方的第三方软件包仓库,为开发者提供了一个方便的平台来发布、分享和安装Python库。今天我们...

    PySide6 Python+QML例程.zip

    PySide6是Python中的一个库,它为开发者提供了与Qt库的接口,使得Python程序员能够利用Qt的强大功能,包括创建图形用户界面(GUI)和使用QML(Qt Meta Language)。Qt是一个跨平台的C++框架,广泛应用于桌面、移动...

    ExcelLibrary库安装

    可用于python3的ExcelLibrary库下列涉及修改内容已修改: 文件 setup.py #execfile(join(dirname(__file__), 'ExcelLibrary', 'version.py')) exec(open(join(dirname(__file__), 'ExcelLibrary', 'version.py'))....

    python模块导入练习.zip

    在Python中,你可以使用`import`语句来引入其他模块。例如,如果你想使用Python的标准库中的`math`模块,可以这样写: ```python import math ``` 接着,你可以通过`.`操作符访问`math`模块中的函数,如`sqrt()`:...

    第10章 Python的模块和包.rar

    - 使用`from...import...`可以导入模块中的特定部分,如`from math import sqrt`仅导入平方根函数。 - `import...as...`可以给模块起别名,如`import numpy as np`,便于后续调用。 2. **内置模块与自定义模块**...

    python爱心代码高级 .docx

    from math import sin, cos, pi # 设置画布和画笔 screen = turtle.Screen() screen.bgcolor("black") heart = turtle.Turtle() heart.color("red") heart.speed(5) # 定义绘制爱心的函数 def draw_heart(size): ...

    python3 解决cannot import name '_AES'问题

    在Python编程环境中,有时我们可能会遇到“cannot import name '_AES'”这样的错误,尤其是在尝试导入`Crypto.Cipher.AES`模块时。这个问题通常出现在使用了`pycryptodome`库或者`pycrypto`库尝试进行AES加密解密...

    python SIX包

    4. **导入兼容**:在Python 2中,我们可以使用`import x`或`from x import y`来导入模块或成员。而在Python 3中,`__future__`引入了`absolute_import`,使得`from x import y`在默认情况下是绝对导入。`six`提供了`...

    Python爬虫基础知识.docx

    from myproject.items import ExampleItem class ExampleSpider(scrapy.Spider): name = 'example' allowed_domains = ['example.com'] start_urls = ['http://example.com'] def parse(self, response): for...

Global site tag (gtag.js) - Google Analytics