if_name_ == main '_' 的意思:如果该模块作为主程序的话,执行。作为模块被调用的话,不执行。
def c2f(cel): fah = cel * 1.8 + 32 return fah def f2c(fah): cel = (fah - 32) / 1.8 return cel def test(): print("0华氏度 = %.2f摄氏度" %f2c(0)) print("0摄氏度 = %.2f华氏度" %c2f(0)) if __name__ == "__main__": test ()运行这个文件,该模块作为主程序,测试程序执行:
0华氏度 = -17.78摄氏度 0摄氏度 = 32.00华氏度
作为模块被调用,不会运行测试文件:
>>> import Ceshi as cf >>> print ("32摄氏度 = %.2f华氏度" %cf.c2f (32)) 32摄氏度 = 89.60华氏度 >>> print ("99华氏度 = %.2f摄氏度" %cf.f2c (99)) 99华氏度 = 37.22摄氏度当我们调用模块的时候,模块需要和程序在同一文件夹内,但是我们可以通过搜索路径,将在不同文件夹内的程序,也可以来调用模块。
>>> import sys >>> sys.path ['E:\\python\\python 3.6', 'E:\\python\\python 3.6\\python36.zip', 'E:\\python\\python 3.6\\DLLs', 'E:\\python\\python 3.6\\lib', 'E:\\python\\python 3.6', 'E:\\python\\python 3.6\\lib\\site-packages']
系统会在上面的文件夹里面的搜索,有没有相关的模块,通过上图,很明显Ceshi.py 不在预设的路径中,所以我们可以吧该模块的路径假如到预设中:
>>> sys.path.append("E:\\python\\python 3.6\\存储的文件") >>> import Ceshi as cf >>> print ("32摄氏度 = %.2f华氏度" %cf.c2f (32)) 32摄氏度 = 89.60华氏度1. 创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;
2. 在文件夹中创建一个_init_.py的模块文件,内容可以为空;
3. 将相关的模块放入文件夹中。
导入包:import 包名.模块名