如何验证输入以检查它是否至少包含1个数字,一个大写字母和一个小写字母。我看过类似的问题,他们似乎并不完全是我需要的东西,例如只检查数字和拒绝信件,除了一个以上的数字,大写字母和小写字母外,我需要它。密码验证 - 至少一个大写,一个小写字母和一个数字
回答
您可以使用assert
与any()
和string
结合内置模块是这样的:
import string
password = '1Aa'
try:
assert any(i in string.ascii_lowercase for i in password)
assert any(i in string.ascii_uppercase for i in password)
assert any(i in string.digits for i in password)
except AssertionError as e:
raise Exception('Invalid password!')
import re
def passwordagain():
password()
def password():
print()
password = input("Enter a secure password: ")
if re.search('[A-Z]',password) is None:
print("Password must contain at least one capital letter and one number.")
passwordagain()
elif re.search('[0-9]',password) is None:
print("Password must contain at least one capital letter and one number.")
passwordagain()
elif re.search('[a-z]',password) is None:
print("Password must contain at least one capital letter and one number.")
passwordagain()
else:
filename = ("password.");
with open (filename, "w") as f:
f.write (password)
print()
print("Password saved")
'passwordagain()'是什么? – asongtoruin
对不起,错过了,它只是一种方式来循环功能 – user8435959
这不是一个非常明智的方式来启动无限循环。你应该考虑使用'while True:' - [这个问题和答案](https://stackoverflow.com/questions/3754620/a-basic-question-about-while-true)可能会有帮助 – asongtoruin
- 1. 匹配至少一个小写字母和至少一个大写字母
- 2. 测试至少一个小写字母和大写字符
- 3. 带有至少一个大写字母,一个小写字母,一个特殊字符,一个数字和一个空格的字符串
- 4. 第一个字母大写小写
- 5. 密码应至少包含一个数字和一个字符
- 6. 匹配至少一个字母,一个数字和一个非alphanum
- 7. jquery验证插件至少检查一个字母和一个数字
- 8. 如何检查字符串是否至少有6个字符,一个大写字母和一个数字? - Javascript
- 9. ASP验证器:仅验证小写字母和大写字母
- 10. Jquery验证插件密码包含至少10个字符,1个数字或标点符号,1个大写和1个小写字母。
- 11. 第一个字母大写
- 12. C#计数每个大写字母和每个小写字母
- 13. x86汇编:更改一个大写字母为小写字母
- 14. 寻找至少有一个小写字母,至少一个大写字母,至少一个数字和长度在6和14之间的密码的正则表达式
- 15. 正则表达式PHP与密码长度为8,至少有一个大写字母,数字nd字母
- 16. 大写字母的第一个字母
- 17. 的PHP的preg_match字母数字,与至少一个大写字符
- 18. php正则表达式需要检查一个字符串至少有一个大写字符,一个小写字符和任一个数字或符号
- 19. 至少有一个字段必须填写,cakephp验证
- 20. 验证至少要填写一个字段,重力形式
- 21. 至少有一个大写字母和数字的jquery或javascript密码生成器
- 22. Python正则表达式:密码必须包含至少一个大写字母和数字
- 23. 至少有一个数字和一个大写字母的JavaScript正则表达式
- 24. PHP正则表达式不连续的字符,至少有一个大写和小写,至少有一个数字?
- 25. 我想在java中创建一个长度为8个字符或更多,一个大写,一个小写字母和一个符号的密码检查器。
- 26. 第一个数组项目的大写字母,但仍然有小写字母
- 27. 在Lex中匹配包含至少一个大写和小写字母的字符串,
- 28. 一个大写字母验证正则表达式
- 29. javascript验证 - 只允许一个大写字母
- 30. 怎样的第一个字母返回一个字大写
https://stackoverflow.com/questions/7684815/regex-for-alphanumeric-with-at至少1个数字和1个字符 – user2341726
到目前为止您尝试了什么?请展示一些努力。 – Moberg
https://stackoverflow.com/questions/41117733/validation-a-password-python重复? –