python入口文件详解_Python基础系列讲解——那些py文件中容易忽略的细节

本文详细介绍了Python的模块机制,包括入口文件的作用、编码声明、程序入口`if __name__ == "__main__"`,以及包的概念和结构。还探讨了import的用法,包括导入模块、避免命名冲突及从模块中导入特定函数。最后提到了sys.modules在模块加载中的角色。

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

模块是一种以.py为后缀的文件,我们可以在.py文件中编辑Python代码,比如变量、函数、类、逻辑等等,满足某种特定的功能。

比如新建一个test_for_xxxx.py的文件,此时我们已经创建了一个test_for_xxxx模块,模块的名称是该.py脚本文件的名称。

声明代码

在文件的头部编写以下声明代码:

#!/usr/bin/python 或者 #!/usr/bin/env python

#coding:utf-8

#!/usr/bin/python指定 【/usr/bin/python】目录下的Python解释器执行Python脚本。

#!/usr/bin/env python根据PATH环境变量中指定的第一个Python解释器,执行Python脚本。【推荐使用】

#coding:utf-8声明该文件的编码格式为 utf-8 。输入该代码就可以使py文件支持中文显示。

程序入口

在文件中添加如下代码:

if __name__ == "__main__"

if name == 'main’相当于Python模拟的程序入口,Python本身并没有这么规定,这只是一种编码习惯。当.py文件被直接运行时,if name == 'main’下的代码块将被运行;当.py文件以模块形式被导入时,if name == 'main’下的代码块不被运行。

包的概念

包是在模块之上的概念,为了方便管理而将文件进行打包,本质是一个目录。比如当两个功能不同的模块文件取了相同的名称时,无法区分导入的模块是哪个模块,就可以分别构造一个包,将模块放在包文件夹下,通过包.模块名来引用模块。通常一个包文件由__init__.py和其他诸多.py文件构成。该__init__.py内容可以为空,也可以写入一些包执行时的初始化代码。

包目录下除了模块文件为,也可以包含子目录,假如子目录中也有 init.py,那么它就是这个包的子包了。

常见的包结构:

package

├── init.py

├── module1.py

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值