python模块导入

我不是女神ヾ 2022-05-29 08:54 363阅读 0赞

模块一共三种:python标准库、第三方模块、应用程序自定义模块。
相同名字的函数和变量完全可以分别存在不同的模块中,因此,我们自己在编写模块时,不必考虑名字会与其他模块冲突。但是也要注意,尽量不要与内置函数名字冲突。

模块导入执行两件事:

(1)引入变量名(2)执行该文件

  1. 基本导入用法:
  2. 1import module1[, module2[,... moduleN]
  3. 2import logging as log #用别名
  4. 3from modname import function
  5. 4from filename import module
  6. #__name__的作用:在执行文件中为__main__,在被调用包中为所在文件名
  7. #注意不要直接在功能文件包中直接写执行语句。可以写在__name__判断下
  8. print(__name__) # 输出__main__
  9. 作用:1.用于被调用文件测试
  10. 2.用于防止外部调用主函数,可仅在bin文件中调用main函数执行程序
  11. if __name__=="__main__":
  12. print(__name__) # __main__
  13. main.run()
  14. # 导入包在同级目录可直接
  15. import module
  16. 或者
  17. import module as 别名
  18. #from module import * # 不推荐,容易函数重名导致覆盖和占用内存
  19. ##不在同一级目录则会按照sys.path中路径查找,首先查找当前执行文件所在路径
  20. import sys
  21. print(sys.path)
  22. # ['F:\\老男孩全栈3课件\\day21\\day21\\day21_lesson',
  23. # 'F:\\老男孩全栈3课件\\day21',
  24. # 'F:\\python_virtual\\Scripts\\python36.zip',
  25. # 'F:\\python_virtual\\DLLs',
  26. # 'F:\\python_virtual\\lib',
  27. # 'F:\\python_virtual\\Scripts',
  28. # 'D:\\Anaconda3\\Lib',
  29. # 'D:\\Anaconda3\\DLLs',
  30. # 'F:\\python_virtual',
  31. # 'F:\\python_virtual\\lib\\site-packages',
  32. # 'D:\\Anaconda3', 'D:\\Anaconda3\\lib\\site-packages',
  33. # 'D:\\Anaconda3\\lib\\site-packages\\setuptools-28.8.0-py3.6.egg',
  34. # 'D:\\Anaconda3\\lib\\site-packages\\pip-9.0.1-py3.6.egg', '
  35. # D:\\Anaconda3\\lib\\site-packages\\win32',
  36. # 'D:\\Anaconda3\\lib\\site-packages\\win32\\lib',
  37. # 'D:\\Anaconda3\\lib\\site-packages\\Pythonwin',
  38. # 'C:\\JetBrains\\PyCharm # #
  39. # 2017.3.2\\helpers\\pycharm_matplotlib_backend']
  40. # 只能from 当前可找到路径.下一级路径.下一级路径 import 包
  41. # import 最后只能导入包不能导入文件
  42. #任何被调用文件总是从执行文件路径开始查找,而非它们各自的文件路径

添加基路径的方法

  1. # 方便查找定义在祖父级下的包
  2. import os
  3. import sys
  4. BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(os.path.abspath)))
  5. print(BASE_DIR)
  6. sys.path.append(BASE_DIR)
  7. # os.path.dirname 作用:查找当前文件路径
  8. #os.path.abspath 作用:查找当前文件绝对路径
  9. #__file__ 作用:查看当前执行文件路径
  10. 合起来可以起到查看上两级文件路径,对一般项目建立三级文件结构来说足够用了。

发表评论

表情:
评论列表 (有 0 条评论,363人围观)

还没有评论,来说两句吧...

相关阅读