1.将指定的字符串进行加密

# 导入模块
import hashlib def get_md5(data):
# 获取hashlib模块中的md5加密算法
obj = hashlib.md5()
# 获取要加密的字符串
obj.update(data.encode('utf-8'))
# 进行加密后赋值给result
result = obj.hexdigest()
# 返回密文
return result
# 向函数中传递需要加密的字符串,并将返回的加密参数赋值给val
val = get_md5('')
# 打印输出val
print(val)

####加盐(增强)

# 导入模块
import hashlib def get_md5(data):
# 将明文和加盐的字符串同时加密,增加加密强度
obj = hashlib.md5('fargqreeqcqwcdqqwrwfe798fqw7f954q646'.encode('utf-8'))
# 获取要加密的字符串
obj.update(data.encode('utf-8'))
# 进行加密后赋值给result
result = obj.hexdigest()
# 返回密文
return result
# 向函数中传递需要加密的字符串,并将返回的加密参数赋值给val
val = get_md5('fuqian1314')
# 打印输出val
print(val)

####应用

# 导入模块
import hashlib
# 存放用户名和密码的列表
user_list = []
def get_md5(data):
# 将明文和加盐的字符串同时加密,增加加密强度
obj = hashlib.md5('fargqreeqcqwcdqqwrwfe798fqw7f954q646'.encode('utf-8'))
# 获取要加密的字符串
obj.update(data.encode('utf-8'))
# 进行加密后赋值给result
result = obj.hexdigest()
# 返回密文
return result # 注册函数
def zhuce():
print("***************用户注册***************")
while True:
user = input("请输入用户名:")
if user == 'n':
return
pwd = input("请输入密码:")
temp = {'user':user,'pwd':get_md5(pwd)}
user_list.append(temp) # 登录函数
def denglu():
print("***************用户登录***************")
user = input("请输入用户名:")
pwd = input("请出入密码:")
for i in user_list:
if i['user'] == user and i['pwd'] == get_md5(pwd):
return True
zhuce()
result = denglu()
if result:
print("登录成功!")
else:
print("登录失败!")

2.密码不显示

import  getpass
# 将密码隐藏起来不显示~~但是只能在终端使用,PyCharm中不能使用
pwd = getpass.getpass("请输入密码:")
# 输出密码
print(pwd)

3.获取当前时间

# 导入模块
import time # 获取当前时间,从1970年到现在的秒数
v = time.time() # 暂停两秒
time.sleep(2)

4.生成随机数

# 导入模块
import random
# 返回随机生成的一个实数,在(0,1)范围内。
v = random.random()
print(v)

最新文章

  1. 【Cocos2d-x for WP8 学习整理】(3)CCScrollView 实现捕鱼达人一样的场景选择界面
  2. 理解模板引擎Razor 的原理
  3. 将STM32的标准库编译成lib使用【图文】
  4. 在ubuntu上面安装phpmyadmin后,报404错误
  5. 生JS实现jQuery的ready方法呢?下面是其中之一的做法:
  6. javascript常用对象
  7. JS两种声明函数的方法以及调用顺序
  8. 如何保护 .NET 应用的安全?
  9. lispbox 安装运行.sh的时候出现 lispbox.sh: 2: lispbox.sh: Bad substitution
  10. Eclipse中设置注释、日期等信息
  11. JS 一条原型链扯到底
  12. h5实现本地图片或文件的上传
  13. admin组件
  14. tf.py_func
  15. WorldCount代码检查与优化——软件测试第三次作业
  16. java中Comparatable接口和Comparator接口的区别
  17. 深入解析内存原理:SRAM的基本原理
  18. mui+回复弹出软键盘
  19. pycharm的安装和使用
  20. java集合框架中Set和List的区别

热门文章

  1. linux netstat 查看网络连接状况
  2. POJ 1789 Truck History【最小生成树模板题Kruscal】
  3. Http请求头和响应头(Get和Post)
  4. ThreadLocal父子线程之间的数据传递问题
  5. rownum伪行号-排行榜-分页
  6. KMP算法最浅显理解——一看就明白
  7. Java实现无向图的建立与遍历
  8. linux 从远程服务器拷贝文件
  9. 剑指offer42:数组和一个数字S,输出两个数的乘积最小的
  10. go语言操作kafka