导入函数: import和from...import...的区别

原创 2016年05月31日 21:40:19

空说import和from...import...的区别,比较抽象。举个例子


定义一个函数myadd,并将这个函数命名为diguilist.py,保存到diguilist的文件夹中。也就是创建了一个diguilist的模块:

def myadd(item):
    for n in item:
        print("n=",n)
        if isinstance(n,list):
            myadd(n)
        else:
            print(n)

现在,有一个list,想调用diguilist的模块中的myadd函数,实现list的遍历。创建一个新的list

cast = ["food", "fruit", ["apple", "strawberry", "cherry"]]

如果是用import调用,则代码如下:

import diguilist
cast = ["food", "fruit", ["apple", "strawberry", "cherry"]]
diguilist.myadd(cast)  #需要注明myadd这个函数是来自哪个模块,不然(如果去掉 diguilist.)会报错:“myadd” is not defined

如果是用from...import...调用,则代码如下:

from diguilist import myadd
cast = ["food", "fruit", ["apple", "strawberry", "cherry"]]
myadd(cast)

所以,from...import...会限定导入的函数是哪个模块的。而import则没有这个功能。相比之下,还是更喜欢from...import...的语句


不过需要注意的一点就是:如果当前的编辑器中已经定义了一个myadd的函数,那么import语句会用导入的函数覆盖本编辑器定义的函数。

版权声明:本文为博主原创文章,欢迎转载,转载请注明出处。

相关文章推荐

import reload from...reload的区别

import 作用: 导入/引入一个python标准模块,其中包括.py文件、带有__init__.py文件的目录。 e.g: [python] view plain copy...

Python 使用 from module import 导入模 块

Python 有两种导入模块的方法。两种都有用,你应该知道什么时候使用哪一种方法。一种方法,import module。另一种方法完成同样的事情,但是它与第一种有着细微但重要的区别。 下面是 fro...

OC导入类#import与@class的区别

objective-c中#import和@class的区 在Objective-C中,可以使用#import和@class来引用别的类型, 但是你知道两者有什么区别吗? @clas...

OC 导入类 #import和@class 区别

objective-c中#import和@class的区别 在Objective-C中,可以使用#import和@class来引用别的类型, 但是你知道两者有什么区别吗? @class...
  • GUITK
  • GUITK
  • 2012-07-03 17:19
  • 8383

OC_#import与@class的导入类区别

objective-c中#import和@class的区别 在Objective-C中,可以使用#import和@class来引用别的类型, 但是你知道两者有什么区别吗? ...

webpack对样式的处理 ,导入样式require和import的区别

我们可以在js中引入样式文件 require('myStyle.css') 这时我们便需要引入相应的webpack loader来帮助我们解析这段代码。 一般来说需要引入css-...

@import导入外部样式表与link链入外部样式表的区别

先解释一下网页添加css样式的方法,一共有四种,分别是: 一、内嵌样式——直接在页面的标签里加测试信息 二、内部样式表——在head部分加入 div{margin: 0;padding: ...

@import导入外部样式表与link链入外部样式表的区别

网页添加css样式的方法,一共有四种,分别是: 一、内嵌样式——直接在页面的标签里加测试信息 二、内部样式表——在head部分加入 div{margin: 0;padding: 0;bor...

from lxml import etree

  • 2017-09-13 11:30
  • 1.72MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)