python引入模块时import与from ... import的区别(转)

import datetime是引入整个datetime包,如果使用datetime包中的datetime类,需要加上模块名的限定。

1 import datetime
2
3 print datetime.datetime.now()

如果不加模块名限定会出现错误:TypeError: ‘module‘ object is not callable \ AttributeError: ‘module‘ object has no attribute ‘now‘

    from datetime import datetime是只引入datetime包里的datetime类,在使用时无需添加模块名的限定。

1 from datetime import datetime
2
3 print datetime.now()

总结:Python导入模块的方法有两种:import module 和 from module import,区别是前者所有导入的东西使用时需加上模块名的限定,而后者不需要。

转:http://www.cnblogs.com/xxoome/p/5880693.html

时间: 2024-11-10 13:57:41

python引入模块时import与from ... import的区别(转)的相关文章

python引入模块时import与from ... import的区别

import datetime是引入整个datetime包,如果使用datetime包中的datetime类,需要加上模块名的限定. 1 import datetime 2 3 print datetime.datetime.now() 如果不加模块名限定会出现错误:TypeError: 'module' object is not callable \ AttributeError: 'module' object has no attribute 'now'     from datetim

python导入模块时的执行顺序

当python导入模块,执行import语句时,到底进行了什么操作?按照python的文档,她执行了如下的操作: 第一步,创建一个新的module对象(它可能包含多个module) 第二步,把这个module对象插到sys.module中 第三步,装载module的代码(如果需要,则必须先编译) 第四步,执行新的module中对应的代码. 在执行第三步时,首先需要找到module程序所在的位置,搜索的顺序是: 当前路径(以及从当前目录指定的sys.path),pythonpath,然后是pyth

python 引入模块 笔记

记录一下今天在项目中 遇到python导入模块的问题,提醒自己以后注意: 如图在views同级目录下定义了common包 有两种调用方法: 1. 1 import common.common 2 b = common.common.f(3) 3 print(b) 这种方式调用时要写全名 2. 1 from common import common 2 b = common.f(3) 3 print(b) 这种方式通过模块名+函数可完成调用

python导入模块时对路径的处理

导入模块时的理论部分: 如果自定义一个模块,导入的时候很可能出问题,因为系统自动回去sys.path输出的这几个目录下去找,而自定义的模块很可能不再这些目录下,就需要人为的添加进去才能使用,所以就引出了后面几种方法 下面是在pycharm中的一个例子 在pycharm中可以使用os模块的__file__来得到当前目录import os import sys project_path = os.path.dirname(os.path.dirname(__file__)) sys.path.app

【解决问题】解决python安装模块时UnicodeDecodeError

安装模块时,出现报错: UnicodeDecodeError: 'ascii' codec can't decode byte 0xcb in position 68: ordinal not in range(128) 解决方案: C:\Python27\Lib目录下mimetypes.py中添加 1 import sys 2 if sys.getdefaultencoding() != 'gbk': 3 reload(sys) 4 sys.setdefaultencoding('gbk')

Python中模块(Module)和包(Package)的区别

1. 模块(Module) 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(Module). 使用模块有什么好处? 最大的好处是大大提高了代码的可维护性.其次,编写代码不必从零开始.当一个模块编写完毕,就可以被其他地方引用.我们在编写程序的时候,也经常引用其他模

python 导入模块时所查询的路径

alex视频里的截图: 白色部分路径用来存放自己写的模块.(查询时按照顺序依次查找,找到即止) 但是在我自己的环境下并没有找到这个路径. 反倒是都有个site-packages目录. 不过没关系,这个路径可以自己添加: 方法一:函数添加1 import sys2 查看sys.path3 添加sys.path.append("c:\\") 当然,不要忘记创建相应的目录. 方法二:增加.pth文件,推荐!(本人未作测试)在site-packages添加一个路径文件,如mypkpath.pt

解决Python引入模块后IDE可用,Eclipse不可用的问题

刚才添加一个chardet模块,安装后IDE可引用,使用正常,但在Eclipse中import chardet报错. 解决方法: 在Eclipse的window->preference->PyDev->Interpreter-Python中,libraries标签下,点击New Egg/Zip(s),然后选择模块所在目录,添加进去即可.

python之模块distutils,打包工具

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块distutils,打包工具 import distutils #distutils包有2个目的: 1)distutils希望让最终用户觉得安装新模块.包和工具的过程一致而轻松 2)distutils希望让新模块.包和工具的开发者觉得创建这些容易安装的分发包很轻松 总得来说,distutils就是用来打包的模块. #2.用distutils如何打包? #http://blog.csdn.