代码改变世界

2018.3.17学习笔记(time模块、sys模块、os模块、pickle模块(待详细补充))

2018-03-18 01:22  冒牌权限  阅读(81)  评论(0)    收藏  举报

time()模块

#/usr/bin/env python
# -*- coding:utf-8 -*-

import time

#print(time.clock()) #返回处理器时间,3.3开始已废弃 , 改成了time.process_time()测量处理器运算时间,不包括sleep时间,不稳定,mac上测不出来
print(time.altzone)  #返回与utc时间的时间差,以秒计算\
print(time.asctime()) #返回时间格式"Fri Aug 19 11:14:16 2016",
print(time.localtime()) #返回本地时间 的struct time对象格式
print(time.gmtime(time.time()-800000)) #返回utc时间的struc时间对象格式

print(time.asctime(time.localtime())) #返回时间格式"Fri Aug 19 11:14:16 2016",
print(time.ctime()) #返回Fri Aug 19 12:38:29 2016 格式, 同上

# 日期字符串 转成  时间戳
string_2_struct = time.strptime("2016/05/22","%Y/%m/%d") #将 日期字符串 转成 struct时间对象格式
print(string_2_struct)

struct_2_stamp = time.mktime(string_2_struct) #将struct时间对象转成时间戳
print(struct_2_stamp)

#将时间戳转为字符串格式
print(time.gmtime(time.time()-86640)) #将utc时间戳转换成struct_time格式
print(time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) ) #将utc struct_time格式转成指定的字符串格式

#时间加减
import datetime

print(datetime.datetime.now()) #返回 2016-08-19 12:47:03.941925
print(datetime.date.fromtimestamp(time.time()) )  # 时间戳直接转成日期格式 2016-08-19
print(datetime.datetime.now() )
print(datetime.datetime.now() + datetime.timedelta(3)) #当前时间+3天
print(datetime.datetime.now() + datetime.timedelta(-3)) #当前时间-3天
print(datetime.datetime.now() + datetime.timedelta(hours=3)) #当前时间+3小时
print(datetime.datetime.now() + datetime.timedelta(minutes=30)) #当前时间+30分

c_time  = datetime.datetime.now()
print(c_time.replace(minute=3,hour=2)) #时间替换

sys()模块

#/usr/bin/env python
# -*- coding:utf-8 -*-

import sys,platform,time,pickle

print(sys.argv)#输出传给模块的参数,第一个参数是程序路径本身
print(sys.path)#输出模块搜索路径,第三方路径F:\\Python37\\lib\\site-packages
print(sys.version)#输出python解释器版本信息
print(sys.platform)#返回操作系统平台名称
print(platform.architecture())#对比一下sys.platform

for i in range(21):
    sys.stdout.write('\r')#清空屏幕
    sys.stdout.write("%s%% |%s"% (int(i/20*100),i*''))#格式化的时候\%会报错,所以使用%%
    sys.stdout.flush()#强制刷新
    time.sleep(0.5)

#pickle序列化模块,此模块只有python可识别

os()模块

#!/usr/bin/env python
# -*- coding:utf-8 -*-

# os.getcwd()                 获取当前工作目录,即当前python脚本工作的目录路径
# os.chdir("dirname")         改变当前脚本工作目录;相当于shell下cd
# os.curdir                   返回当前目录: ('.')
# os.pardir                   获取当前目录的父目录字符串名:('..')
# os.makedirs('dir1/dir2')    可生成多层递归目录
# os.removedirs('dirname1')   若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
# os.mkdir('dirname')         生成单级目录;相当于shell中mkdir dirname
# os.rmdir('dirname')         删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
# os.listdir('dirname')       列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
# os.remove()                 删除一个文件
# os.rename("oldname","new")  重命名文件/目录
# os.stat('path/filename')    获取文件/目录信息
# os.sep                      操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
# os.linesep                  当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
# os.pathsep                  用于分割文件路径的字符串
# os.name                     字符串指示当前使用平台。win->'nt'; Linux->'posix'
# os.system("bash command")   运行shell命令,直接显示
# os.environ                  获取系统环境变量
# os.path.abspath(path)       返回path规范化的绝对路径
# os.path.split(path)         将path分割成目录和文件名二元组返回
# os.path.dirname(path)       返回path的目录。其实就是os.path.split(path)的第一个元素
# os.path.basename(path)      返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
# os.path.exists(path)        如果path存在,返回True;如果path不存在,返回False
# os.path.isabs(path)         如果path是绝对路径,返回True
# os.path.isfile(path)        如果path是一个存在的文件,返回True。否则返回False
# os.path.isdir(path)         如果path是一个存在的目录,则返回True。否则返回False
# os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
# os.path.getatime(path)      返回path所指向的文件或者目录的最后存取时间
# os.path.getmtime(path)      返回path所指向的文件或者目录的最后修改时间

pickle()模块