题一:编写一个接受句子并计算字母和数字的程序。假设为程序提供了以下输入:
Hello world! 123
然后,输出应该是:
字母10
数字3
x=input("请输入")
b={"数字":0,"字母":0}
for i in x :
if i.isdigit():
b["数字"]+=1
elif i.isalpha():
b["字母"]+=1
for key,val in b.items():
print (key,val)
题二:
题:编写一个程序,计算a + aa + aaa + aaaa的值,给定的数字作为a的值。假设为程序提供了以下输入:9 。然后,输出应该是: 11106
a=int(input("请输入一个数字"))
b=[]
c="1"
for i in range(4):
b.append(int(c)*a)
c+="1"
print(sum(b))
当list是一个空的,没有一个元素,进行赋值就会出现错误
所以得用append函数加,刚才一直在用=(赋值)查了查,才知道
题三:
题:网站要求用户输入用户名和密码进行注册。编写程序以检查用户输入的密码的有效性。
以下是检查密码的标准:
- [a-z]之间至少有1个字母
- [0-9]之间至少有1个数字
- [A-Z]之间至少有一个字母
- [$#@]中至少有1个字符
4.最短交易密码长度:6
5.交易密码的最大长度:12
您的程序应接受一系列逗号分隔的密码,并将根据上述标准进行检查。将打印符合条件的密码,每个密码用逗号分隔。
例:如果以下密码作为程序的输入:
ABd1234@1,a F1#,2w3E*,2We3345
然后,程序的输出应该是:
ABd1234 @ 1
import re
value=[]
password=input("输入你的密码").split(",")
for p in password:
if len(p)<6 or len(p)>12:
continue
if not re.search("[a-z]",p):
continue
elif not re.search("[A-Z]",p):
continue
elif not re.search("[0-9]",p):
continue
elif not re.search("[$#@]",p):
continue
elif not re.search("[a-z]",p):
continue
value.append(p)
print("".join(value))
原本按习惯用re.match然后找不到,看了看他的用search就盘活了。
match只找开头,开头没有就没有,search全局找。
版权归原作者 v_3483608762 所有, 如有侵权,请联系我们删除。