1 # 直接导入 2 # 1,多个文件一行导入 ----不建议 3 import 家具,多态 4 5 # 2.一个文件一行导入 6 import 单例 7 import 代码异常 8 9 # 使用的时候要用 模块名.方法/属性名 10 代码异常.demo1() 11 12 # 别名 模块别名遵守大驼峰 13 import 继承重写与扩展 as ClassReWrite 14 dog = ClassReWrite.Dog() 15 dog.bark() 16 17 # 局部导入 18 from 测试导入1 import demo as Demo1 19 from 测试导入2 import demo 20 21 #缺点:如果文件的方法重名,后导入的会覆盖先导入的,可以通过起别名的方式避免 22 #优点:不用在方法名前加模块名 可以直接调用方法 23 Demo1() 24 demo() 25 26 # 不推荐使用这种方式导入全部,函数重名没有任何提示,不好排错 27 from 测试导入1 import * 28 29 #注意:给文件起名时,不要和系统的模块文件重名 30 import random 31 # 如果给文件起名叫random 会导致系统函数没法用 32 # 模块的搜索顺序 33 # 1.先搜索当前目录,如果有就导入 34 # 2.如果没有,就搜索系统目录 35 rand = random.randint(1,10) 36 print(rand) 37 38 #__name__属性 39 # 如果是当前执行的程序 __name__是 __main__ 所以调试的时候用__name__ 40 if __name__ == "__main__": 41 print("要调试的代码,这样就不会被加载次文件的执行程序中显示")
重新导入:
1 import 需导入的模块 as test 2 # 模块导入只第一次有效,如果导入进来后需导入的模块改变了,想重新导入的话要重新加载 3 from imp import reload 4 # 只能重新导入import 导入的包 5 reload(test) 6 7 test.test_age()