系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 脚本中心 > python > 详细页面

Python模块的定义,模块的导入,__name__用法实例分析

时间:2020-01-07来源:系统城作者:电脑系统城

本文实例讲述了Python模块的定义,模块的导入,__name__用法。分享给大家供大家参考,具体如下:

相关内容:

  • 什么是模块
  • 模块的导入
    • 模块的导入
    • 自模块的导入
      • 同级目录导入
      • 不同级目录导入
        • 目录内导入目录外
        • 目录外导入目录内
  • __name__

什么是模块:

在Python中,模块就是一个个方法和类的仓库,如果我们想要使用某个模块中的某个方法或类,那么我们就需要导入对应的模板。

【python有内置方法、类,所以有些方法我们并不需要导入模块】

模块的使用:模块.函数 ,     模块.类


 
  1. #函数
  2. import math
  3. print(math.sqrt(3))
  4. #类
  5. import threading
  6. a=threading.Thread()
  7. print(a)

模块的导入:

 

  • 模块导入:

    • import 模块名
    
     
    1. #import 模块名
    2. import math
    3. print(math.sqrt(9))
    • from…import 语句:从模块中导入一个指定的部分,如类、方法,其中from…import * 代表导入全部内容

 
  1. #from 模块名 import 类名、方法名
  2. from collections import Iterable
  3. print(isinstance("abc",Iterable))
  4. print(isinstance([1,2,3],Iterable))
  • from…import导入的时候还能给导入的部分起个自定义的名字:如:from … import funcA as fa
  • 自模块导入:

Python import 的搜索路径

1.在当前目录下搜索该模块

2.在环境变量 PYTHONPATH 中指定的路径列表中依次搜索 【可以从sys.path中获取】


 
  1. import sys
  2. print(sys.path)
  3.  
  4. ----------
  5. 运行结果:
  6. ['J:\\HardWork\\Code\\python',
  7. 'J:\\HardWork\\Code\\python',
  8. 'I:\\python3\\python36.zip',
  9. 'I:\\python3\\DLLs',
  10. 'I:\\python3\\lib',
  11. 'I:\\python3',
  12. 'I:\\python3\\lib\\site-packages']

3.在 Python 安装路径的 lib 库中搜索

    • 同级目录导入:直接导入

 image_thumb

image_thumb[2]

image_thumb[4]

    • 不同级目录导入:将对应目录加入到sys.path中,再import

      • 目录内的b导入目录外的c

目录结构:image

c中内容:image

b中如何导入c:


 
  1. import sys,os
  2. print(__file__)##这是当前文件的绝对路径
  3. parent_dir=os.path.dirname(__file__)##获得当前文件的目录
  4. pp_dir=os.path.dirname(parent_dir)
  5. sys.path.append(pp_dir)
  6. # print(sys.path)
  7. import c #要导入c,必须将diff_dir加入sys.path中
    • 目录外的c导入目录内的d

目录结构:image

d中内容:image

c中如何导入d:


 
  1. from d2 import d

或:


 
  1. import d2.d

 

结果:image


__name__:

由于模块既可以被导入,也可以被直接运行,为了区分什么是直接运行时运行的内容,所以有了__name__:

 

当直接运行时,__name__是__main__:


 
  1. print("import C done")
  2. print(__name__)
  3.  
  4. if __name__=='__main__':
  5. print("direct run")
  6.  
  7. ---------------
  8. 运行结果:
  9. import C done
  10. __main__
  11. direct run

当用于导入时,__name__是当前导入的模块名,由于__name__不等于__main__,所以不会执行image_thumb[7]


 
  1. import sys,os
  2.  
  3. # print(__file__)##这是当前文件的绝对路径
  4. parent_dir=os.path.dirname(__file__)##获得当前文件的目录
  5. pp_dir=os.path.dirname(parent_dir)
  6. sys.path.append(pp_dir)
  7. # print(sys.path)
  8. import c #要导入c,必须将diff_dir加入sys.path中
  9.  
  10.  
  11.  
  12.  
  13. ------------------
  14. 运行结果:
  15. import C done
  16. c

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载