【1701H1】【穆晨】【180124】第106天总结
模块:代码的重用
if __name__ == '__main__'
__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ 。这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。
这是昨天做的温度模块,在模块中加入test,然后idle导入模块
然后发现idle会有测试的东西,这会影响客户体验,这时候就用到if __name__ == '__main__'
搜索路径:
写好的模块放在哪里,可以放在你要用的idle同处的文件夹里,如果有人想要把模块统一放在一个文件夹里怎么办
python在导入模块的时候会在固定的搜索路径里找模块(一个列表),如果有则导入模块,如果没有则导入失败。
上面是模块可以放的地方。就是模块放在这些地方,导入模块可以成功,推荐放在pcakages里面(因为这个文件夹就是专门放模块的)
这是导入模块失败,如果想要导入这个模块,你可以把模块放在上述的文件夹内,也可以sys.path.append(“文件夹地址”)来把这个地址添加到搜索路径中
包(package):
在一个大型工程里,有着成千上万的模块不足为奇,如果把这些模块放在一个文件夹里,会显得杂乱无章,还可能会出现命名冲突的情况,这时候包(package)就显的很重要了
创建一个包的步骤:
1.创建一个文件夹,用于存放相关的模块,文件夹的名字就是包的名字
2.在文件夹中创建一个__init__.py的模块文件,内容可以为空
3.将相关的模块放入文件夹中
这是创建的包文件夹,里面放入模块TemperatureConversion,再创建一个__init__.py文件
模块我们放在了包文件夹里,不在搜索路径中,所以导入模块报错找不到模块
这时我们只要在模块名前面加入(包名.)就可以了,如图
这就是包,在大型工程里很有用,如果有人像我一样有强迫症,喜欢把东西弄的很有条理,这个方法很赞