eval可以把字符串中的数据结构提取出来,或者可以执行字符串中的表达式。
模块
Python中,一个.py文件就称为一个模块。
from ... import ...
引入模块默认是从执行文件所在目录找,解释器只认sys.path里的路径。
包里面有个__init__.py文件,包是用来组织模块用的,逻辑清晰,避免重名冲突。调用包就是执行包下的__init__.py文件。
包特别多: from 包1.包2.包3 import 文件
from 包1.包2.包3.文件 import 方法
from 包1.包2 import 包3 #执行包3的__init__文件,唯一一种不支持的调用方式
if __name__='__main__': 功能:1.用于被调用文件的测试;2.不想被别的程序调用。
时间模块time
三种:时间戳、结构化时间、字符串时间
time.time()时间戳 从Unix诞生(1970年1月1日早八点)到指定时间经过的秒数,用作计算
time.localtime()结构化时间——当地时间 显示年月日时分秒周几今年第几天是否夏令时
time.gmtime()结构化时间——UTC时间
time.strftime('%Y-%m-%d %X',time.localtime())结构化时间转为年-月-日 时:分:秒 %F即年-月-日
time.strptime('2016:12:24:17:50:36','%Y:%m:%d:%X')
time.asctime()把结构化时间转换为固定字符串表达形式
time.ctime()把时间戳转换为固定字符串表达形式
import datetime
datetime.datetime.now()
随机模块random
random.random() 0-1的浮点数
random.randint(1,3) [1,3]内的整数
random.randrange(1,3) [1,3)内的整数
random.choice([11,22,33]) 列表中随机选一个
random.sample([11,22,33],2) 列表中随机选两个
random.uniform(1,3) 1-3的浮点数
random.shuffle([1,5,6,7]) 打乱列表顺序