今日内容: 一 time与datetime模块 二 random模块 三 os模块 四 sys模块 五 suprocess模块 # time模块和datetime模块 ''' import time # 一:时间的三种格式 # 1、时间戳:秒数=>用于时间计算 # start=time.time() # print(start,type(start)) # 2、格式化的字符串=>用于显示给人看 # res=time.strftime("%Y-%m-%d %H:%S:%M %p") # res=time.strftime("%Y-%m-%d %X") # print(res,type(res)) # 3、结构化的时间=>获取时间的某一部分 # res = time.localtime() # res1 = time.gmtime() # print(res,type(res)) # print(res.tm_year) # print(res) # print(res1) # 二:时间转换 # 2.1 时间戳---》格式化的字符串 # struct_time=time.localtime(3333.3) # res=time.strftime("%Y:%m",struct_time) # print(res) # 2.2 格式化的字符串---》时间戳 # struct_time=time.strptime("2017-07-03 11:11:11","%Y-%m-%d %H:%M:%S") # res=time.mktime(struct_time) # print(res) # print(time.time()) # 时间戳 # print(time.localtime()) # 将一个时间戳转换为当前时区的struct_time。 # print(time.gmtime()) # UTC时区的struct_time # print(time.mktime(time.localtime())) # 将一个struct_time转化为时间戳。 # print(time.strftime("%Y-%m-%d %X")) # 格式化的时间字符串 2020-07-30 14:56:20 # print(time.strptime('2020-07-30 14:56:20','%Y-%m-%d %X')) # 把一个格式化时间字符串转化为struct_time。(strftime()的逆操作)。 # print(time.asctime()) # 把一个表示时间的元组或者struct_time表示为'Thu Jul 30 15:27:23 2020'(默认参数为time.localtime()) # print(time.ctime()) # 把时间戳格式表示为'Thu Jul 30 15:27:23 2020' (默认参数为time.time()) # time.sleep(3) # 线程推迟指定的时间运行,单位为秒。 # 计算机认识的时间只能是'时间戳'格式,而程序员可处理的或者说人类能看懂的时间有: '格式化的时间字符串','结构化的时间' ,于是有了以下的转换关系 # 格式化的字符串时间(format string)---(strptime)--->结构化的时间---(mktime)--->时间戳(timestamp) # 格式化的字符串时间(format string)<---(strftime)---结构化的时间<---(localtime)---时间戳(timestamp) import datetime # print(datetime.datetime.now()) # 返回 2020-07-30 15:32:52.197233 # print(datetime.date.fromtimestamp(time.time())) # 时间戳直接转成日期格式 2020-07-30 # print(datetime.datetime.now()) # 2020-07-30 15:32:52.197233 # print(datetime.datetime.now() + datetime.timedelta(3)) # 当前时间+3天 2020-08-02 15:32:52.197233 # print(datetime.datetime.now() + datetime.timedelta(-3)) # 当前时间-3天 2020-07-27 15:32:52.197233 # print(datetime.datetime.now() + datetime.timedelta(hours=3)) # 当前时间+3小时 2020-07-30 18:32:52.197233 # print(datetime.datetime.now() + datetime.timedelta(minutes=30)) # 当前时间+30分 2020-07-30 16:02:52.197233 # c_time = datetime.datetime.now() # 时间替换 # print(c_time.replace(minute=3, hour=2)) # 2020-07-30 02:03:28.398511 ''' # random模块 ''' import random # print(random.random()) # 大于0且小于1之间的小数 # print(random.randint(1, 3)) # 大于等于1且小于等于3之间的整数 # print(random.randrange(1, 3)) # 大于等于1且小于3的整数 # print(random.choice([1, '3', [4, 7]])) # 在给定参数中随机取一个值 # print(random.sample([1, '3', [4, 7]], 2)) # 列表元素任意2个组合 # print(random.uniform(1, 3)) # 大于1且小于3的小数 # item = [1, 2, 3, 4, 5] # random.shuffle(item) # 打乱item的顺序,(洗牌) # print(item) # 生成随机验证码 # def make_code(n): # n------->验证码位数 # s = '' # for i in range(n): # s1 = str(random.randint(0, 9)) # s2 = chr(random.randint(65, 90)) # s += random.choice([s1, s2]) # return s # print(make_code(4)) ''' # os模块 ''' import os # print(os.listdir(".")) # ['7.30.py'] 返回包含目录中文件名的列表。 # cmd = input(r""" # Microsoft Windows [版本 10.0.19041.388] # (c) 2020 Microsoft Corporation. 保留所有权利。 # # %s=====> """ % os.getcwd()) # res = os.system(cmd) # print('=' * 100) # print(res) # os.remove() # 删除一个文件 # os.rename("oldname","newname") # 重命名文件/目录 # os.system("bash commond") # 运行shell命令,直接显示 # print(os.environ) # 获取系统环境变量 # os.mkdir('dirname') # 生成单级目录;相当于shell中mkdir dirname # path = r'F:\notepad\2020.7.01\day21\7.30.py' # print(os.path.join('a', 'b', 'c', 'd.txt')) # a\b\c\d.txt 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 # print(os.path.dirname(path)) # F:\notepad\2020.7.01\day21 返回path的目录。 # print(os.path.basename(path)) # 7.30.py 返回path最后的文件名 # print(os.path.split(path)) # ('F:\\notepad\\2020.7.01\\day21', '7.30.py') # print(os.path.getsize(path)) # 返回path的大小 (字节数) # print(os.path.getatime(path)) # 返回path所指向的文件或者目录的最后存取时间 # print(os.path.getmtime(path)) # 返回path所指向的文件或者目录的最后修改时间 # print(os.path.exists(path)) # 判断文件是否存在,如果path存在,返回True;如果path不存在,返回False # print(os.path.isabs(r"F:\notepad\2020.7.01\day21")) # True 如果path是绝对路径,返回True # print(os.path.isabs(r"\notepad\2020.7.01\day21")) # True # print(os.path.isabs(r"notepad\2020.7.01\day21")) # False # os路径处理 # 方式一: # 具体应用 # import os, sys # # possible_topdir = os.path.normpath(os.path.join( # os.path.abspath(__file__), # os.pardir, # 上一级 # os.pardir, # os.pardir # )) # sys.path.insert(0, possible_topdir) # 在索引前插入对象,加入环境变量中 # print(sys.path) # # # 方式二: # print(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) # F:\notepad ''' # sys模块 ''' import sys # print(sys.argv) # 命令行参数List,第一个元素是程序本身路径 # print(sys.version) # 获取Python解释程序的版本信息 # sys.exit() # 退出程序,正常退出时exit(0) # print(sys.path) # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 # print(sys.platform) # 返回操作系统平台名称 # 打印动态进度条 import time def progress(percent): if percent > 1: percent = 1 print("\r[%-50s] %d%%" % ("#" * int(50 * percent), int(100 * percent)), end='') total_size = 16343 # 进度总长度 recv_size = 0 # 初始为0 while recv_size < total_size: time.sleep(0.3) recv_size += 1024 # 每次下载1024 percent = recv_size / total_size progress(percent) ''' # subprocess模块 ''' import subprocess obj1 = subprocess.Popen("dir", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) obj2 = subprocess.Popen("dirasdas", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) res1 = obj1.stdout.read() res2 = obj2.stderr.read() print(res1.decode('gbk')) print('-' * 50) print(res2.decode('gbk')) '''
day21 内置模块(1)
猜你喜欢
转载自www.cnblogs.com/bronya/p/13404963.html
今日推荐
周排行