题目1:
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
while 1:
strs = input("please input a string(quit will be exit): ")
alpha, dig, space, other = 0, 0, 0, 0
if strs.strip() == "quit":
exit(1)
for i in strs: //注意for循环的格式缩进
if i.isalpha():
alpha += 1
elif i.isdigit():
dig += 1
elif i.isspace():
space += 1
else:
other += 1
print("alpha = {0}".format(alpha))
print("dig = {0}".format(dig))
print("space = {0}".format(space))
print("other = {0}".format(other))
![](https://i-blog.csdnimg.cn/blog_migrate/c03dc6039cd7dba795cfcf470cc6b011.png)
解析:
1、设置一个while循环,需要退出,直接输入quit可退出程序。
2、设置数字、字母、空格、其他字符的默认取值为0,使用input( )函数并使用for、if循环嵌套遍历计算输入的内容。
3、当输入一段内容后,程序会根据函数判断这段内容中存在的数字、字母、空格、其他字符的数量并打印出来。
4、isdigit( )函数判断是否数字;isalpha( )判断是否字母; isspace( ) 判断是否为空。
题目2:
ABCD乘9=DCBA,A=? B=? C=? D=? 答案:a=1,b=0,c=8,d=9 1089*9=9801:
for A in [1]:
for B in range(0,10):
for C in range(0,10):
for D in [9]:
if ((1000*A + 100*B + 10*C + D)*9 == 1000*D + 100*C + 10*B +A):
print("A = {0}".format(A))
print("B = {0}".format(B))
print("C = {0}".format(C))
print("D = {0}".format(D))
print("{0}{1}{2}{3}*9={4}{5}{6}{7}".format(A,B,C,D,D,C,B,A))
##或者