time模块

         在python中的时间表现形式:

  • 时间戳 (自1970-01-01-00-00 到当前时间,按秒计算,一共过了多少秒

  • 格式化时间

    返回的是时间的字符串

  • 格式化时间对象

    返回的是一个元组   元组中有9 个值:

    分别代表:年、月、日、时、分、秒、一周中的第几天、一年中的第几天、夏令时

    用法:

    """
    import time 
    1、获取时间戳
    time.time
    
    
    2、获取格式化时间
    获取年月日
    time.strftime('%Y-%m-%d')
    
    获取年月日时分秒
    time.strftime('%Y-%m-%d %H:%M:%S')
    %X = %H:%M:%S
    time.strftime('%Y-%m-%d %X')
    
    3、获取时间对象
    time.localtime()
    
    获取当前时间的格式化时间
    time.strftime('%Y-%m-%d %H:%M:%S', )
    #将字符串格式的时间转换成时间对象
    res = time.strptime('2019-01-01', '%Y-%m-%d')
    print(res)
    """
    View Code

    datetime 模块

    用法:

    """
    获取当前年月日
    print(datetime.date.today())
    
    获取当前年月日 时分秒 
    print(datetime.datetime.today())
    
    time_obj = datetime.datetime.today()
    查看类型
    print(type(time_obj))
    获取当前的年份
    print(time_obj.year)
    获取当前的月份
    print(time_obj.month)
    获取当前的日份
    print(time_obj.day)
    
    UTC时区
    #北京时间
    print(datetime.datetime.now())
    #伦敦时间
    print(datetime.datetime.utcnow())
    """
    View Code
    """
    日期/时间的计算
        日期时间 = 日期时间 '+' or '-' 时间对象
        时间对象 = 日期时间 '+' or '-' 日期时间
    日期时间:
    current_time = datetime.datetime.now()
    print(current_time)
    
    时间对象: #获取7天时间 
    time_obj = datetime.timedelta(days = 7)
    print(time_obj)
    
    
    #获取当前时间7天后的时间
    时间日期 = 日期时间 '=' or '-' 时间对象
    later_time = current_time + time_obj
    peint(later_time)
    
    时间对象 = 日期时间 '+' or '-' 日期时间
    time_new_obj = later_time - current_time
    print(time_new_obj)
    
    
    """
    View Code

    random 模块

    使用方法:

    import random
    """
    随机模块
    随机获取1-9中任意的整数
    res = random.randint(1,9)
    print(res)
    
    洗牌 可将可迭代中的值进行乱序
    list = ['红桃A', '梅花A', '红桃Q', '方块K']
    random.shuffle(list)
    print(list)
    
    # 随机获取可迭代对象中的某一个值
    
    list1 = ['红桃A', '梅花A', '红桃Q', '方块K']
    res = random.choice(list1)
    print(res)
    
    """
    View Code

    案例:

    """
    chr(7) 可以将ASCII表中值转换成对应的字符
    random.randint  随机获取一个整数 
    random.choice  随机获取一个值
    """
    
    
    #获取任意长度的随机验证码
    # def get_code(n):
    #     code = ''
    #     for line in range(n):
    #         #随机获取一个小写字母
    #         res1 = random.randint(97, 122)
    #         lower_str = chr(res1)
    #
    #         #随机获取一个大写字母
    #         res2 = random.randint(65, 90)
    #         upper_str = chr(res2)
    #
    #         #随机获取一个数字
    #         number = str(random.randint(0, 9))
    #         code_list = [lower_str, upper_str, number]
    #         random_code = random.choice(code_list)
    #         code += random_code
    #     return code
    # code = get_code(5)
    # print(code)
    # print(len(code))
    View Code

    OS 模块

    与操作系统交互的模块

  

 获取当前文件中的上一级目录
# DAY15_PATH = os.path.dirname(__file__)
# print(DAY15_PATH)
#
# # 项目的根目录,路径相关的值都用 “常量” 
# BASE_PATH = os.path.dirname(DAY15_PATH)
# print(BASE_PATH)
#
# # 路径的拼接: 拼接文件 “绝对路径”
# TEST_PATH = os.path.join(DAY15_PATH, '老男孩老师们的写真集.txt')
# print(TEST_PATH)
#
# # 判断“文件/文件夹”是否存在:若文件存在返回True,若不存在返回False
# print(os.path.exists(TEST_PATH))  # True
# print(os.path.exists(DAY15_PATH))  # True
#
# # 判断“文件夹”是否存在
# print(os.path.isdir(TEST_PATH))  # False
# print(os.path.isdir(DAY15_PATH))  # True
#
# # 创建文件夹
# DIR_PATH = os.path.join(DAY15_PATH, '老男孩老师们的写真集')
# # os.mkdir(DIR_PATH)

# 删除文件夹: 只能删除 “空的文件夹”
# os.rmdir(DIR_PATH)
View Code

 

sys 模块 

用法:

import sys
#获取当前的python 解释器的环境变量
print(sys.path)
# 将当前项目添加到环境变量中
BASE_PATH = os.path.dirname(os.path.dirname(__file__))
sys.path.append(BASE_PATH)

# 获取cmd终端的命令行  python3 py文件 用户名 密码
print(sys.argv)  # 返回的是列表['']
View Code

hashlib 模块

hashlib 是一个加密模块 :

--内置很多算法

摘要算法:

--摘要是从某一段内容中获取的加密字符

--摘要一样,密码就一样

     ----- 密文密码就是一个摘要

使用方法:

import hashlib

md5_obj = hashlib.md5()

srt = '123'
md5_obj.update(srt.encod('nut-8')) # 转换字符编码
res = md5_obj.hexdigest() # 加密  

但是会存在撞库破解的风险,所以我们要采取一个措施:加盐  
import hashlib


def pwd_md5(pwd):  #
    md5_obj = hashlib.md5()
    # print(type(md5_obj))
    str1 = pwd  # '1234'
    # update中一定要传入bytes类型数据
    md5_obj.update(str1.encode('utf-8'))

    # 创造盐
    sal = '坦克怎么这么帅啊!'
    # 加盐
    md5_obj.update(sal.encode('utf-8'))

    # 得到一个加密后的字符串
    res = md5_obj.hexdigest()
    # eb1ca06cf5940e9fb6ef39100ec72c94
    return res
View Code

 

 

posted on 2019-11-27 16:25    阅读(102)  评论(0编辑  收藏  举报