修正这个语句错误处:def yzm(string): list = [] a = hashlib.md5() list.append(string) list.append(a.hexdigest()) return list print('随机字符串:{0[0]}\n加密后生成16进制32位为:{0[1]}'.format(md5(code(6))))
时间: 2024-01-30 11:01:28 浏览: 32
修正后的语句如下:
```python
import hashlib
import random
import string
def md5(length):
code = ''.join(random.choices(string.ascii_letters + string.digits, k=length))
a = hashlib.md5()
a.update(code.encode('utf-8'))
return [code, a.hexdigest()]
result = md5(6)
print('随机字符串:{}\n加密后生成16进制32位为:{}'.format(result[0], result[1]))
```
修改的地方包括:
1. 将函数名 `yzm` 修改为 `md5`,更符合函数的实际作用;
2. 将字符串生成的代码从函数内部移到函数外部,可以复用;
3. 使用 `random.choices` 生成随机字母和数字的序列;
4. 使用 `str.encode` 将字符串转换为字节流再进行哈希操作;
5. 将返回值改为一个列表,包括原始字符串和哈希值;
6. 修改 `print` 函数的使用方式,避免使用了过时的字符串格式化方法。
相关问题
String inputcode = request.getParameter("yzm");这串代码意思
这是一段Java代码,其中request是一个HttpServletRequest对象,getParameter()是HttpServletRequest的方法之一。这段代码的意思是从HTTP请求中获取名为"yzm"的参数的值,并将其赋给名为inputcode的字符串变量。通常,这种代码用于从Web表单中获取用户输入的数据。
<script type="text/javascript"> function yzmUpdate(){ document.yzm.src="yzm.php?"+Math.random(); } function createXML(){ var xml=false; if(window.ActiveXObject){ try{xml=new ActiveXObject("Msxml2.xmlhttp")} catch(e){ try{xml=new ActiveXObject("Microsoft.xmlhttp")} catch(e){xml=false;} } } else if(window.XMLHttpRequest){ xml=new XMLHttpRequest(); } return xml; } function check(){ var User_name_text=document.getElementById('User_name'); var User_name=User_name_text.value; var xml=createXML(); var postStr="User_name="+User_name; xml.open('POST','check.php',true); xml.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=utf8"); xml.send(postStr); xml.onreadystatechange=function(){ if(xml.readyState==4 && xml.status==200){ var res=xml.responseText; if(res!=""){ alert(res); } } } } </script>输入账号离开User_name文本框时,使用Ajax对账号进行查重操作,若账号重复,则弹出消息框显示提示信息(如下图所示)。续写代码
<html>
<head>
<title>账号查重</title>
<script type="text/javascript">
function yzmUpdate() {
document.yzm.src = "yzm.php?" + Math.random();
}
function createXML() {
var xml = false;
if (window.ActiveXObject) {
try {
xml = new ActiveXObject("Msxml2.xmlhttp")
} catch (e) {
try {
xml = new ActiveXObject("Microsoft.xmlhttp")
} catch (e) {
xml = false;
}
}
} else if (window.XMLHttpRequest) {
xml = new XMLHttpRequest();
}
return xml;
}
function check() {
var User_name_text = document.getElementById('User_name');
var User_name = User_name_text.value;
var xml = createXML();
var postStr = "User_name=" + User_name;
xml.open('POST', 'check.php', true);
xml.setRequestHeader("content-type", "application/x-www-form-urlencoded;charset=utf8");
xml.send(postStr);
xml.onreadystatechange = function () {
if (xml.readyState == 4 && xml.status == 200) {
var res = xml.responseText;
if (res != "") {
alert(res);
User_name_text.focus();
}
}
}
}
</script>
</head>
<body>
<form>
<label>账号:</label>
<input type="text" id="User_name" onBlur="check()">
<br>
<label>验证码:</label>
<input type="text">
<img src="yzm.php" name="yzm" onClick="yzmUpdate()">
</form>
</body>
</html>