Python中怎么控制from xxx import *导入的成员

技术Python中怎么控制from xxx import *导入的成员本篇内容介绍了“Python中怎么控制from xxx import *导入的成员”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下

本文介绍了Python中“如何控制从xxx import *导入的成员”的知识。很多人在实际案例操作中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

控制from xxx import *导入的成员

默认情况下,将导入所有成员。但是您可以修改__all__变量来控制可以导入哪些成员。变量是字符串列表(或元组),内部元素是可以导入的成员名称。

例如,请参见下图:test1模块中有三个名为、年龄和身高的成员,而__all__变量保存了这三个成员名称。Test2模块从test1导入*导入test1的所有成员。此时,test2模块通常可以使用test1的三个成员。

Python中怎么控制from  xxx  import  *导入的成员

看下图:test1模块中的__all__变量保存了三个成员名称,但是标注了成员高度(注意列表的写法,一个元素一行,用ctrl/标注不能导入的成员非常方便。如果所有内容都写在一行,内部元素不能被注释,只能被删除),test2模块从test1导入*导入test1的所有成员。此时只能使用姓名和年龄成员,不能使用身高成员。

Python中怎么控制from  xxx  import  *导入的成员

注意:使用import 模块时,__all__不起作用.请看下面的例子。用import test1导入test1的所有成员后,即使在__all__变量中注释了test1的height成员,test2模块仍然可以正常使用。

Python中怎么控制from  xxx  import  *导入的成员

绝对导入

在大型项目中,我们经常会遇到很多模块文件。为了方便管理,我们通常根据功能设置多个文件夹,不同的文件夹中有多个模块,每个模块可以相互引用。今天我们来整理一个绝对导入的方法。

有一个项目,路径是D:\Python自学笔记\模块。这个项目下有几个模块和文件夹,其中aa文件夹下有一个文件夹B,文件夹B中有bb.py模块。

注意红圈的内容。实际上,python解释器在加载。py文件。sys.path[0]是当前模块的完整路径,sys.path[1]是当前模块的项目路径。

现在bb模块需要通过来自aa.c.cc import *的方法调用cc模块的成员num2,其中B模块知道项目路径是“D:\Python自学笔记\模块”,然后添加aa文件夹名称,c文件夹名称和。cc模块名称绝对导入cc.py模块的所有成员。

Python中怎么控制from  xxx  import  *导入的成员

Python中怎么控制from  xxx  import  *导入的成员

在项目路径“D:\Python自学笔记\ module”下有一个test_import.py模块,可以通过绝对导入的方式导入bb模块(另外,bb模块中已经绝对导入了cc模块,相当于同时导入bb和cc),也可以通过导入的方式在同一路径导入test1模块。

Python中怎么控制from  xxx  import  *导入的成员

Python中怎么控制from  xxx  import  *导入的成员

绝对路径导入法简单易懂,参加大型项目一定要学会这个技巧。深入学习python的朋友最好自己去挖掘代码,多练习,熟练掌握。

这里介绍一下“如何控制Python中从xxx import *导入的成员”的内容。感谢您的阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/116541.html

(0)

相关推荐

  • @GetMapping @PathVariable传double类型数据时丢失精度怎么办

    技术@GetMapping @PathVariable传double类型数据时丢失精度怎么办本篇文章为大家展示了@GetMapping @PathVariable传double类型数据时丢失精度怎么办,内容简明扼要并且容

    攻略 2021年10月20日
  • Modern Batch和计算密集型的编程模型是如何批量处理

    技术Modern Batch和计算密集型的编程模型是如何批量处理本篇内容主要讲解“Modern Batch和计算密集型的编程模型是如何批量处理”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编

    攻略 2021年11月2日
  • nginx如何处理request body参数配置

    技术nginx如何处理request body参数配置这篇文章主要介绍nginx如何处理request body参数配置,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!通常情况下,nginx与客户端

    攻略 2021年11月21日
  • vscode怎样引入vuejs框架

    技术vscode怎样引入vuejs框架今天就跟大家聊聊有关vscode怎样引入vuejs框架,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。vscode引入vuej

    攻略 2021年11月2日
  • 怎么实现jenkins邮件配置

    技术怎么实现jenkins邮件配置本篇文章为大家展示了怎么实现jenkins邮件配置,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Jenkins搭建完成后,接下来就要做一些配置工

    攻略 2021年11月17日
  • ivy的配置和使用是怎样的

    技术ivy的配置和使用是怎样的本篇文章给大家分享的是有关ivy的配置和使用是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。maven很强大,但也有令人

    攻略 2021年11月10日