常用的模块:time模块,random模块,hashlib,os模块,sys模块,loggin模块
time模块:
时间戳:time.time()
格式化字符串:time.strftime("%Y-%m-%d %x")
时间元组:time.localtime()
time模块之间的转换:
random模块(随机):
>>>random.randint(x,y) #取大于等于x且小于等于y的随机整数
>>>random.randrange(x,y) #取大于等于x且小于y的随机整数
>>>random.choice([1,'23',[4,5]]) #取1或者23或者[4,5]
>>>random.sample([1,'23',[4,5]],2) #取列表任意两个元素组合
>>>random.shuffle(list) #打乱次序
os模块:
1 ''' 2 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 3 os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd 4 os.curdir 返回当前目录: ('.') 5 os.pardir 获取当前目录的父目录字符串名:('..') 6 os.makedirs('dirname1/dirname2') 可生成多层递归目录 7 os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推 8 os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname 9 os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname 10 os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印 11 os.remove() 删除一个文件 12 os.rename("oldname","newname") 重命名文件/目录 13 os.stat('path/filename') 获取文件/目录信息 14 os.sep 输出操作系统特定的路径分隔符,win下为"\",Linux下为"/" 15 os.linesep 输出当前平台使用的行终止符,win下为" ",Linux下为" " 16 os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为: 17 os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix' 18 os.system("bash command") 运行shell命令,直接显示 19 os.environ 获取系统环境变量 20 os.path.abspath(path) 返回path规范化的绝对路径 21 os.path.split(path) 将path分割成目录和文件名二元组返回 22 os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素 23 os.path.basename(path) 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素 24 os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False 25 os.path.isabs(path) 如果path是绝对路径,返回True 26 os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False 27 os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False 28 os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 29 os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间 30 os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间 31 os.path.getsize(path) 返回path的大小 32 '''
sys模块:
1 sys.argv 命令行参数List,第一个元素是程序本身路径 2 sys.exit(n) 退出程序,正常退出时exit(0) 3 sys.version 获取Python解释程序的版本信息 4 sys.maxint 最大的Int值 5 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 6 sys.platform 返回操作系统平台名称
logging模块:
默认情况下Python的logging模块将日志打印到了标准输出中,且只显示了大于等于WARNING级别的日志,这说明默认的日志级别设置为WARNING(日志级别等级CRITICAL > ERROR > WARNING > INFO > DEBUG),默认的日志格式为日志级别:Logger名称:用户输出消息。
灵活配置日志级别,日志格式,输出位置:
1 import logging 2 logging.basicConfig(level=logging.DEBUG, 3 format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', 4 datefmt='%a, %d %b %Y %H:%M:%S', 5 filename='/tmp/test.log', 6 filemode='w') 7 8 logging.debug('debug message') 9 logging.info('info message') 10 logging.warning('warning message') 11 logging.error('error message') 12 logging.critical('critical message')