Python_import Vs from module import

本文介绍了Python中使用import和from module import的不同方式及适用场景。详细解释了如何避免名字冲突,以及何时应该使用from module import来简化代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import 需要加上模块名的限定。

from module import 导入到局部名字空间,所以它可以直接使用,而不需要加上模块名的限定。可以导入独立的项或使用 from module import * 来导入所有东西

 

>>> import types

>>> types.FunctionType

<type 'function'>

>>> FunctionType # FunctionType 本身没有被定义在当前名字空间中;它只存在于 types 的上下文环境中。

Traceback (innermost last):

  File "<interactive input>", line 1, in ?

NameError: There is no variable named 'FunctionType'

>>> from types import FunctionType

>>> FunctionType

<type 'function'>

 

什么时候你应该使用 from module import?

如果你要经常访问模块的属性和方法,且不想一遍又一遍地敲入模块名,使用 from module import。

如果你想要有选择地导入某些属性和方法,而不想要其它的,使用 from module import。

如果模块包含的属性和方法与你的某个模块同名,你必须使用 import module 来避免名字冲突。

ps: 尽量少用 from module import * ,因为判定一个特殊的函数或属性是从哪来的有些困难,并且会造成调试和重构都更困难。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值