三、模块
模块(module)
模块是一个包含有一系列变量、函数、类等组成的程序组;模块是一个文件,模块文件通常以.py结尾。
作用:
1.让一些相关的变量、函数、类等有逻辑的组织在一起,是逻辑结构更加清晰。
2.模块中的变量、函数和类可提供其他模块作用。
模块的分类:
1.内置模块(builtins):在解释器的内部可以直接使用。
2.标准库模块:安装python时已安装且可直接使用。
3.第三方模块(通常为开源),需要自己安装。
4.用户自己编写的模块(可以作为其他人的第三方模块).
1、模块的导入
1.1 import 语句
语法:import 模块名1 [as 模块新名]
示例:
import math #导入数学模块
import sys, os # 导入sys,os模块
作用:将某模块整体导入到当前模块中。
用法:模块名.属性名
1.2 from ... import 语句
语法:from 模块名 import 模块属性名 [ as 属性新名]
作用:将某模块内的一个或多个属性导入到当前模块的作用域.
示例:
from math import pi, sqrt
from math import factorial as fac
1.3 from ... import * 语句
语法: from 模块 import *
作用:将某模块的所有模块属性导入到当前模块。
示例:
from math import *
from math import *
dir函数
格式: dir([对象]) —> 返回一个字符串对象
说明:
如果没有参数调用,则返回当前作用域内的所有变量的列表,如果给定一个对象的作为参数,则返回这个对象的所有变量的列表.
1.对于模块返回这个模块的全部属性。
2.对于一个类对象,返回类对象的所有变量,并递归基类对象的所有属性
3.对于其他对象返回所有变量、类变量和基类变量.
常见模块
time时间模块
函数名 | 描述 |
---|---|
time.time() | 返回从计算机元年至当前时间的秒数的浮点数 |
time.sleep(secs) | 让程序按给定秒数的浮点数睡眠一段时间 |
time.gmtime([secs]) | 将给定秒数转换我用UTC表达的时间元组 |
time.asctime([turple]) | 将时间元组转换为日期时间字符串 |
time.mktime(turple) | 将本地日期时间元组转换为新纪元秒数时间 |
time.localtime([secs]) | 将UTC秒数时间转换为日期元组(以本地时间为准) |
sys系统模块
函数名 | 描述 |
---|---|
sys.path | 模块搜索路径,path[0]是当前脚本程序的路径名 |
sys.moudles | 已加载模块的字典 |
sys.version | 版本信息字符串 |
sys.version_info | 版本信息的命名元组 |
sys.platform | 操作系统平台名称信息 |
sys.argv | 命令行参数,argv[0]代表当前脚本路径名 |
sys.copyright | 获得python版权相关的信息 |
sys.builtin_module_names | 获得python内建模块的名称(字符串元组) |
sys.stdin | 标准输入文件对象,多用于input() |
sys.stdout | 标准输出文件对象,多用于print() |
sys.stderr | 标准错误输出文件对象,用于输出错误信息 |
sys.exit([argv]) | 退出程序,正常退出是sys.exit(0) |
random随机模块
说明:random模块多用于模拟或生成随机输出的模块。
用法:import random
函数名 | 描述 |
---|---|
random.random() | 返回一个[0, 1)之间的随机实数 |
random.uniform(a, b) | 返回[a, b)区间内的随机实数 |
random.roundrange(range([start, ] stop [, step])) | 返回range(start, stop, step)中的随机数 |
random.choice(seq) | |
random.shuffle(seq, random) | 操作系统平台名称信息 |
random…random() | 命令行参数,argv[0]代表当前脚本路径名 |
random…random() | 获得python版权相关的信息 |