继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第21天Python第七章包、模块、函数与变量作用域

我是香皂皮皂
关注TA
已关注
手记 39
粉丝 0
获赞 5

课程名称:全面系统Python3.8入门+进阶(程序员必备第二语言)

课程章节:7-11 模块内置变量 7-12 入口文件和普通模块内置变量的区别

主讲老师:7七月

课程内容:

今天学习的内容包括:

模块内置变量

入口文件和普通模块内置变量的区别

课程收获:

7-11 模块内置变量

我们除了可以在模块内部定义一些自己的变量,模块还有一些变量是已经给我们定义好的。可以使用dir,他是用来现实当前模块下所有变量。

http://img.mukewang.com/632fa5350001b89e16261047.jpg

如上所示,使用dir后。python打印除了该模块下所有的变量。

可以看到,打印内容里有双下线展示的变量,这些变量就是python内部已经定义好的变量。他们和我们自己定义的变量没有区别。

http://img3.mukewang.com/632fa54200010fba21571355.jpg

7-12 入口文件和普通模块内置变量的区别

http://img3.mukewang.com/632fa54f0001e7a623941355.jpg

同样的代码可以看到才C9里是有package的,但是才c15里没有。这是一个差异,还有一个是那么这里。c15这里打印了__main__,他并不是c15本身的模块名字。

c9的file是当做模块导入执行的,他的文件路径是完整的路径,但在c15这里的时候他却只有c15.py没有路径了。

主要原因在于c15把他当做一个应用程序的入口,用python命令来执行的。但是对于c9来说他是一个正常的普通的python模块。

如果一个.py文件被python当做应用程序的入口文件,那么他的变量name所打印出来的值,就不再是他本身模块名了,而是会被强制更改成__main__。这是入口文件最典型的特点。

其次,第二个特点package上,如果说一个.py文件被当做是入口文件,那么他的顶级是不会再有包的。

http://img1.mukewang.com/632fa55e00015e9214170281.jpg

从以上图片可以看到,file的取值和我们执行python命令所在目录有关系的。


下载视频          
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP