模块导入、命名空间

1、任何以.py结尾的文件都是模块。每个导入的模块都有自己的命名空间,所以调用函数时,需要指定函数所在的的命名空间,否则会报错。

 def hi():
    print('hello world!')
###################

import A21
>>> hi()
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    hi()
NameError: name 'hi' is not defined
>>> A21.hi()
hello world!

2、模块导入的方式与区别。

  第一种:import  模块名。用着种方式导入模块时,每次调用导入的模块中的函数时,必须采用  模块名.函数名()的形式,而有时候模块名会比较长,所以这种方法会比较麻烦。

  第二种:from 模块名 import 函数名(*表示导入所有函数)。从模块中导入指定的函数(名),这种方式导入了指定函数的命名空间,调用时不用加模块名。注意:如果在不同模块中都相同名字的函数,而且同时用这种方法导入,就会因为名字混乱发生冲突。

  第三种:import 模块名 as 新名字。用简单的名字替代原来较长的名字,从而达到简化的效果。

 def hi():
    print('hello world!')
###################

import A21
>>> hi()
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    hi()
NameError: name 'hi' is not defined
>>> import A21 as A
>>>A.hi()
hello world!

 

转载于:https://www.cnblogs.com/Chris-01/p/10729551.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python命名空间是一种容器,用于存储可以映射到对象的称。在Python,有三种类型的命名空间:内置命名空间、全局命名空间模块命名空间。 内置命名空间是在Python解释器启动时创建的,其包含了内置模块、内置函数和内置异常等对象。它们的生命周期从Python解释器启动到退出。 全局命名空间是在解释器读取模块定义后创建的,包含了当前模块的全局变量、函数、类以及导入的其他模块。全局命名空间的生命周期也是从Python解释器启动到退出。 模块命名空间是指在一个模块内部的命名空间。如果没有导入其他模块模块命名空间包含了模块内部的全局变量、类和函数。每个模块都有自己独立的模块命名空间。 总结起来,Python命名空间是用于存储对象和称之间映射关系的容器,包括内置命名空间、全局命名空间模块命名空间。这些命名空间相互独立,允许存在相同称的对象。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [[python] 命名空间](https://blog.csdn.net/u011533352/article/details/128349966)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值