zoukankan      html  css  js  c++  java
  • python -- 模块与类库

    一、模块

    模块(Module)是由一组类、函数和变量组成的,模块文件的扩展名是.py或.pyc

    在使用模块之前,需要先使用import语句导入这个模块。

    语法格式如下:

      import 模块名

      from 模块 import 方法(变量)名1......

    from .... import 语句允许我们只导入模块的一部分,如导入某个具体的类、方法或变量。

    当使用import语句加载模块时,模块内的程序代码会立即被执行。

    使用from .... import 语句只导入我们需要的部分内容,能极大的提高空间的使用效率。

    二、类库

    类库(Package)也称为包,是由相同文件夹下的一组模块组成,类库的使用方法和模块的方法类似;

    唯一需要注意的是,将文件夹当做类库使用时,文件夹中必须包含__init__.py文件,主要为了避免文件夹名当做普通的字符串使用

    语法格式如下:

      import 类库

      import 类库.模块

      from 类库.模块 import 方法/(变量)

      from 类库 import 模块

    import math                     # 导入一个模块
    import os, sys # 导入多个模块

    import datetime
    from datetime import date # 导入模块中某个具体的类
    from math import pi # 导入模块中某个变量

    # import ch08_2

    import xml
    # import xml.sax # 需要使用全名去访问
    # from xml import sax
    # from xml import *
    # from xml.sax.handler import version

    a = 1024
    print("a的平方根为:", math.sqrt(a)) # 求平方根
    print(pi)

    print("当前工作平台:", os.name) # 'nt': Windows 'posix': Linux/Unix
    print("当前系统平台:", sys.platform)

    print("今天的日期:", datetime.date.today())
    print("今天的日期:", date.today())

    ver = xml.sax.handler.version
    print("版本号:", ver)


    import datetime as dt                   # 给模块取个别名
    from datetime import date as newdate # 给模块中的类/方法/变量取别名

    import math

    print("今天的日期:", dt.date.today())
    print("今天的日期:", newdate.today())

    today = dt.date.today
    print("今天的日期:", today())

    new_math = math
    print(new_math.pi)

    # 模块的内置方法
    # __dict__:显示模块的字典
    print("__dict__:", dt.__dict__)

    # __doc__:显示模块的文件字符串
    print("__doc__:", dt.__doc__)

    # __name__:显示模块的名称,用来标识命名空间
    print("__name__:", dt.__name__)
    # 一个模块被另一个程序第一次导入时,其主程序会被执行
    print('__name__:', __name__)
    if __name__ == '__main__':
    print('该模块自身在运行')
    else:
    print('该模块被导入另一个程序时被运行')

    # __file__:显示模块的完整文件路径
    print("__file__:", dt.__file__)

    # del:删除已加载的模块(从内存中清除)
    del dt
  • 相关阅读:
    Firefox地址栏样式设定
    定制Eclipse
    超简单的java爬虫
    JavaWeb--中文乱码小结
    编译原理之正则表达式转NFA
    Fedora下Eclipse/MyEclipse崩溃的解决方案
    利用Octopress在github pages上搭建个人博客
    在Eclipse中导入新浪微博SDK
    BlueMix
    云计算的三层简单理解
  • 原文地址:https://www.cnblogs.com/Teachertao/p/11222246.html
Copyright © 2011-2022 走看看