Excel不相邻列如何打印在一起-英雄云拓展知识分享
115
2023-11-07
【摘要】 本书摘自《Python学习笔记 从入门到实战》一书中第8章,第1节,由张学建编著。
8.1.3 使用name属性
在 Python 程序中,当一个程序第一次引入一个模块时,将会运行主程序。如果想在导 入模块时不执行模块中的某一个程序块,可以用“ name ”属性使该程序块仅在该模块 自身运行时执行。在运行每个 Python程序时,通过对这个“ name ”属性值的判断,可 以让作为导入模块和独立运行时的程序都可以正确运行。在 Python 程序中,如果程序作为 一个模块被导入, 则其“ name ”属性设置为模块名。如果程序独立运行,则将其“ name ”属性设置为“ main ”。由此可见,可以通过属性“ name ”来判断程序的 运行状态。
例如在下面的实例代码中,演示了使用“ name ”属性设置测试模块是否能正常运行 的过程。
实例8-4:测试模块是否能正常运行
源码路径:下载包\daima-4
在上述代码中,将模块的主要功能以实例的形式保存在 if 语句中,这样可以方便地测试 模块是否能够正常运行,或者发现模块的错误。执行后会显示“三体飞船在运行”,如果输 入“import using_name”, 按下回车后则输出“我来自另一模块”。执行后会输出:
三体飞船在运行
注意:建议读者在命令行模式运行【python using_name.py】命令查看完整运行结果,后
面的交互式实例也不例外。
如果想了解模块中所提供的功能(变量名、函数名),可以使用内建的函数 dir(模块名) 来输出模块中的这些信息,当然也可以不使用模块名参数来列出当运行时中的模块信息。例 如可以通过 “dir(using_name)” 列出模块 “using_name” 中的信息。如图8-5所示。
8.2 包是管理程序模块的形式
8.2.1 表示包
在Python 程序中,包其实就是一个文件夹或目录,但其中必须包含一个名为“ init py”(init 的前后均有两条下画线)的文件。“init .py” 可以是一个空文件,表示这个目 录是一个包。另外,还可以使用包的嵌套用法,即在某个包中继续创建子包。
在编程过程中,我们可以将包看作是处于同一目录中的模块。在 Python 程序中使用包时, 需要先使用目录名,然后再使用模块名导入所需要的模块。如果需要导入子包,则必须按照 包的顺序(目录顺序)使用点运算符“.”进行分隔,并使用import 语句进行导入。
在 Python 语言中,包是一种管理程序模块的形式,采用上面讲解的“点模块名(.模块名)” 方式来表示。比如一个模块的名称是 “A.B”, 则表示这是一个包A 中的子模块 B 。在使用 一个包时,就像在使用模块时不用担心不同模块之间的全局变量相互影响一样。在使用“点 模块名(.模块名)”这种形式时,无须担心不同库之间模块重名的问题。
为了便于读者理解,下面举两个简单的例子。
(1)Web 项目举例
在上述结构中, “myweb” 、“handle” 、“temple” 和 “tools” 是相互独立并列的文件
夹,每个文件夹就是一个包,里面都保存了对应的程序文件。在现实应用中,通常将功能不 同的程序文件放在不同的目录下,同目录保存同类功能的程序文件。此时如果想在主程序中 调用包 “handle” 中文件 index.py 模块中的函数 adO, 可以使用如下三种方法实现。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~