0. 请写一个密码安全性检查的脚本代码:check.py
1. #密码安全性检查代码
2. #
3. #低级密码要求:
4. # 1.密码由单纯的数字或字母组成
5. # 2.密码长度小于等于8位
6. #
7. #中级密码要求:
8. # 1.密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)任意两种组合
9. # 2.密码长度不能低于8位
10. #
11. #高级密码要求:
12. # 1.密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)三种组合
13. # 2.密码只能由字母开头
14. # 3.密码长度不能低于16位
15.
16. symbols =r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
17. chars ='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
18. nums = '0123456789'
19.
20. passwd = input('请输入需要检查的密码组合:')
21.
22. #判断长度
23. length = len(passwd)
24.
25. while (passwd.isspace() or length == 0) :
26. passwd = input("您输入的密码为空(或空格),请重新输入:")
27.
28. if length <= 8:
29. flag_len = 1
30. elif 8 < length < 16:
31. flag_len = 2
32. else:
33. flag_len = 3
34.
35. flag_con = 0
36.
37. #判断是否包含特殊字符
38. for each in passwd:
39. if each in symbols:
40. flag_con += 1
41. break
42.
43. #判断是否包含字母
44. for each in passwd:
45. if each in chars:
46. flag_con += 1
47. break
48. 如果密码里面有字符那么con就加1
49. #判断是否包含数字
50. for each in passwd:
51. if each in nums:
52. flag_con += 1
53. break
54.
55. #打印结果
56. while 1 :
57. print("您的密码安全级别评定为:", end='')end=""表示打印对象以什么结尾 ,默认是 \n 也就是换行
58. if flag_len == 1 or flag_con == 1 :
59. print("低")
60. elif flag_len == 2 or flag_con == 2 :
61. print("中")
62. else :
63. print("高")
64. print("请继续保持")
65. break
66.
67. print("请按以下方式提升您的密码安全级别:\n\
68. \t1.密码必须由数字、字母及特殊字符三种组合\n\
69. \t2.密码只能由字母开头\n\
70. \t3.密码长度不能低于16位'")
71. break
4. 哎呀呀,现在的小屁孩太调皮了,邻居家的孩子淘气,把小甲鱼刚写好的代码画了个图案,
麻烦各位鱼油恢复下啊,另外这家伙画的是神马吗?怎么那么眼熟啊!??
1. name = input('请输入待查找的用户名:')
2. score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
3. IsFind = False
4.
5. for each in score:
6. ifname in each:
7. print(name + '的得分是:', each[1])
8. IsFind = True
9. break
10.
11.if IsFind == False:
12. print('查找的数据不存在!')
1. 视频中我们说 sum()这个BIF有个缺陷,就是如果参数里有字符串类型的话就会报错,
请写出一个新的实现过程,自动“无视”参数里的字符串并返回正确的计算结果
1. def sum(x):
2. result = 0
3.
4. for each in x:
5. if (type(each) == int) or (type(each) == float):
6. result += each
7. else:
8. continue
9.
10. return result
11.
12. print(sum([1, 2.1, 2.3, 'a', '1', True]))
4. 请问这个函数有多少个参数?
1. def MyFun((x,y), (a, b)):
2. return x * y - a * b
答案是0,因为类似于这样的写法是错误的!
函数的参数需要的是变量,而这里你试图用“元祖”的形式来传递是不可行的。
应该是要表达这个意思:
1. >>>def MyFun(x, y):
2. return x[0] * x[1] - y[0] * y[1]
3.
4. >>>MyFun((3, 4), (1, 2))
5. 10
编写一个函数power()模拟内建函数pow(),即power(x, y)为计算并返回x的y次幂的值。
1. def power(x,y):
2. result = 1
3.
4. for i in range(y):
#1: range(10),等于[0,1,2,3,4,5,6,7,8,9]
#2: range(1,9),等于[1,2,3,4,5,6,7,8]
#3: range(1,9,2),等于[1,3,5,7]
5. result *= x
# *=:这个符号的就是前后两个变量相乘,结果放到第一个变量中
6.
7. return result
8.
9. print(power(2,3))