政府网站建设管理典型材料新闻稿范文
md5:
python提供了内置的md5加密功能,使用md5模拟一个小项目:
注册:
启动py程序,在控制台界面提示用户输入用户名及密码;
使用md5加密 密码;
创建txt文件记录输入的用户名 和密文。
登录:
再次让用户输入用户名和密码;
使用md5加密 得到对应密文;
读取txt文件验证是否有符合的用户名及密文。
import hashlibdef md5(data):obj = hashlib.md5()obj.update(data.encode('utf-8'))return obj.hexdigest()def write(content1, content2):file_obj = open("db.txt", mode='a', encoding='utf-8')file_obj.write(content1)file_obj.write(content2)file_obj.close()def read(fileName):file_obj = open(fileName, mode='r', encoding='utf-8')content = file_obj.read().split("\n")file_obj.close()return contentif __name__ == '__main__':user = input("请输入用户名: ")password = input("请输入密码: ")pwd = md5(password)# content = "{}\n{}".format(user,pwd)content1 = "{}\n".format(user)content2 = "{}\n".format(pwd)write(content1, content2)data_list = read("db.txt")print(data_list)for index, item in enumerate(data_list):if index == 0:continueif (index % 2 != 0):if pwd == item:if (user == data_list[index - 1]):print("登陆成功")breakprint("循环",index)
md5加盐:
加盐也就是对密文的再次加密,防止撞库,再次加密的对应关系要保留。
例如 :
密文: 900150983cd24fb0d6963f7d28e17f72
加盐: 900150983cd24fb0d6963f7d28e17f72a
加盐对应关系就是最后多个a,这样撞库也撞不出来。
json:
str.json(): json格式转对应字典数组格式
发送一个get请求到url,得到一个json数据,并遍历数组data["data"]["result"]:
只有第一行字符串是json格式,其他行都只是类似json的字符串。
import requestsres = requests.get('https://api.luffycity.com/api/v1/course/actual/?') print(res.text)data = res.json() for item in data["data"]["result"]:print(item)
标准的json格式的语法:
内部一定是用双引号对应key值;
最外层可以是花括号,也可以是中括号;
整个json对象的名字没有意义,不管叫什么名字,只会显示封装好的内部数据
![]()
![]()
json.loads():
python内置的json包提供了对json格式的解析
json.dumps():
将数据封装为json格式。