标签:abs iat 固定 ntp 根目录 \n datetime icc 基本数据类型
‘‘‘
Modules: 模块
1) module的基本常识
2) 常用的modules:
time. random, os, sys, logging, hashlib, re
json, pickle, xml, configparser, io
‘‘‘ # 综述
‘‘‘
module的基本常识:
1. 结构:
package
|-- __init__.py # 必须的, 也是一个module
|-- module1
|-- class
|-- function
|-- module2
2. __name__ 属性:
在module1.py中, module1.__name__ == "__main__"
在module2.py中, module2.__name__ == "module1"
3. 模块的导入:
import:
1) 同一个模块只导入一次, 并加载到内存中
2) 模块的第一次导入:
1> 为模块创建新的命名空间
2> 顺序执行模块中的代码
3> 创建变量来引用该命名空间
from.. import..: 与import不同的是, 直接将module导入到当前的命名空间, 可能会存在执行冲突
from.. import..as: 模块重命名, 解决冲突
4. 模块的用途:
1) 脚本: 导入时运行
2) 调用: 后面调用
5. 模块的搜索顺序:
内存中已经加载的模块 --> 内置模块 --> sys.path中的模块
sys.path设置:
BASE_DIR = os.path.dirname(os.path.dirname(__file__)) # 退回到根目录, __file__ 为当前文件的目录
sys.path.append(BASE_DIR)
‘‘‘ # modules的基本常识
‘‘‘
time: 时间模块
1. 三种形式的时间:
1) Format # 用于表示 %Y %m %d %X(%H %M %S) %a星期
2) Struct_time # 用于存储信息, 结构体, 可通过属性拿到
3) Timestamp # 用于计算
2. 转化:
1) Timestamp --> Struct_time: time.localtime([time.time()])
2) Struct_time --> Timestamp: time.mktime(time.localtime())
3) Struct_time --> Format: time.strftime(format,time.localtime())
Format --> Struct_time: time.strptime(‘str‘,format)
4) Struct_time --> Format(固定格式): time.asctime(time.localtime())
5) Timestamp --> Format(固定格式): time.ctime(time.time())
* datetime.datetime.now() # 获取当前时间
‘‘‘ # time: 时间模块
‘‘‘
random: 生成随机数
1. 方法:
random() # [0,1] float
randint(a,b) # [a,b] int
randrange(d) # (0,d) int
choice(Seq) # 从Seq随机取一个元素
shuffle(list) # 原地打乱list
uniform(a,b) # 均匀分布
expovariate(lambda) # 指数分布
gauss(mu,sigma) # 高斯分布
lognormvariate(mu,sigma) # lognormal分布
‘‘‘ # random: 生成随机数
‘‘‘
os: 与操作系统交互
1. 基本操作
os: 与操作系统交互
1. 路径标识符:
os.curdir # 当前相对目录, ‘.‘
os.pardir # 相对父目录, ‘..‘
os.sep # 路径分隔符, ‘\\‘
os.linesep # 行终止符, ‘\r\n‘
os.pathsep # 文件分隔符, ‘;‘
2. 操作路径: os.path
__file__ # 当前.py文件相对路径
os.path.abspath(path) # 规范化绝对路径