zoukankan      html  css  js  c++  java
  • Python模块(进阶3)

    转载请标明出处:
    http://www.cnblogs.com/why168888/p/6411917.html

    本文出自:【Edwin博客园】


    Python模块(进阶3)

    1. python中模块和包的概念

    代码越来越多的时候

    • 将所有代码放入一个py文件:无法维护
    • 如果将代码分拆放入多个py文件,好处:
      同一个名字的变量互不影响

    引用其他模板

    # test.py # 自身模块名test
    import math # 引用math模块
    print math.pow(2,10) # 调用math模块的函数
    
    

    模块多了以后,也容易重名
    解决:
    同名的模块放入不同的包中

    引用完整的模块

    # test.py # 自身模块名test
    import p1.util # 引用p1.util模块
    print p1.util.f(2,10) # 调用p1.util模块的f函数
    

    在文件系统中

    • 包就是文件夹
    • 模块就是xxx.py文件
    • 包也可以有多级

    如何区别包和普通的目录

    • 包下面有__init__.py
    • 注意每层都必须要有!

    2. python之导入模块

    要使用一个模块,我们必须首先导入该模块。Python使用import语句导入一个模块。

    # -*- coding: utf-8 -*-
    import math, logging
    print math.log(10)   # 调用的是math的log函数
    logging.log(10, 'something')   # 调用的是logging的log函数
    

    使用别名from...import log as logger

    # -*- coding:utf-8 -*-
    from math import log
    from logging import log as logger   # logging的log现在变成了logger
    print log(10)   # 调用的是math的log
    logger(10, 'import from logging')   # 调用的是logging的log
    
    import os
    print os.path.isdir(r'/data/webroot/resource/python')
    print os.path.isfile(r'/data/webroot/resource/python/test.txt')
    

    3. python中动态导入模块

    如果导入的模块不存在,Python解释器会报 ImportError 错误

    try:
        import json
    except ImportError:
        import simplejson as json
    print json.dumps({'python':2.7}) # {"python": 2.7}
    

    4. python之使用__future__

    Python的新版本会引入新的功能,但是,实际上这些功能在上一个老版本中就已经存在了。要“试用”某一新的特性,就可以通过导入__future__模块的某些功能来实现。

    Python 2.7的整数除法运算结果仍是整数

    print 10 / 3 # 3
    

    Python 3.x已经改进了整数的除法运算,“/”除将得到浮点数,“//”除才仍是整数

    print 10 / 3 # 3.33333333333
    print 10 // 3 # 3
    

    在Python 2.7中引入3.x的除法规则,导入__future__的division

    from __future__ import division
    
    print 10 / 3 # 3.33333333333
    
    from __future__ import unicode_literals
    s = 'am I an unicode?'
    print isinstance(s, unicode)
    

    5. python之安装第三方模块

    • 内置了许多有用的模块
    • 可以安装第三发模块

    python提供的模块管理工具

    • easy_install
    • pip(推荐,已内置到python2.7.9)

    pip install web.py

    https://pypi.python.org/

  • 相关阅读:
    vue+element-ui 字体自适应不同屏幕
    nginx——前端服务环境
    定位问题 vue+element-ui+easyui(兼容性)
    四叶草(css)
    vue-cil 打包爬坑(解决)
    el-tree文本内容过多显示不完全问题(解决)
    v-for(:key)绑定index、id、key的区别
    top 命令详解
    uptime 命令详解
    w 命令详解
  • 原文地址:https://www.cnblogs.com/why168888/p/6411917.html
Copyright © 2011-2022 走看看