Python-02 ~ 基础06-模块和包

模块和包是一个非常重要的概念,不多说吧,看下面

一、概念

  • 模块:单个Python文件;
  • :一般指的是一个文件夹,即一般变成语言中的命名空间的概念;

二、模块用法

  1. 模块的导入:
    • 导入方式一
      import [ as ]
      
      • 在import某个模块的时候,会执行这个模块中的代码
      • 如果在导入的时候取了别名,那么模块名称就不能再使用了
    • 导入方式二
      from  import [ as ]
      
  2. 模块方法调用
    .()
    
  3. 自定义模块
    • 需要知道的是,脚本的执行方式可以改变代码的执行行为,如当这个模块在module的模式下运行(import )的时候,那么变量__name__的值是这个模块即文件的名称,如果作为脚本运行的时候(%run .py)__name__的值就是__main__
  4. 查看模块/变量的大纲/可执行的方法
    • dir(/)

三、包的用法

  1. 包的导入:使用包名.子模块、方法、变量即可,用法同模块
    • 需要知道的是,每个包下面都有一个__init__.py文件,主要用来管理整个包中的import

四、常用模块

  • sys:系统模块
    • 常用方法
      1. 获取命令携带参数
        argv_list = sys.argv
        
      2. 获取所有模块的安装搜索路径
        path = sys.path
        
  • 序列化
    • json
      json.dump()
      json.load[s]()
      
    • pickle
      pickle.dump()
      pickle.load[s]()
      
    • urllib、httplib等:Python标准库中提供了urllib等模块以供Http请求;
      • urllib发送请求
        import urllib.request
        req = urllib.request.Request('http://www.example.com/')
        req.add_header('Referer', 'http://www.python.org/')
        # req的各种设置
        conn = urllib.request.urlopen(req)
        result = conn.read().decode('utf-8')
        
      • httplib发送请求
        import httplib
        strURL = "http://192.168.81.16/test//login.py?username=aaaa"
        conn = httplib.HTTPConnection("192.168.33.34")
        conn.request(method = "GET", url = strURL)
        response = conn.getresponse()
        result = conn.read().decode('utf-8')
        

你可能感兴趣的:(Python-02 ~ 基础06-模块和包)