16题已经在10题用time函数的sleep()时已经讲过,故不再展示。
17、题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
17题主要是回顾字符串的内部代码,用自带的help文件也可以找到相应解释。
isalpha(self, /) | Return True if the string is an alphabetic string, False otherwise. |
isdigit(self, /) | Return True if the string is a digit string, False otherwise. |
isspace(self, /) | Return True if the string is a whitespace string, False otherwise. |
s = input('字符串:')
letter = 0
space = 0
digit = 0
other = 0
for i in s:
if i.isalpha():
letter += 1
if i.isspace():
space += 1
if i.isdigit():
digit += 1
other = len(s) - letter - space - digit
print(letter,space,digit,other)
18、 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如:2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
这道题最主要是确定每次的加数是多少。如果是2,那么第一个数字就是number1 = 2,第二个数字number2 = 2 * 10 + 2,第三个数字就number3 = number * 10 + 2 , 第四个数字number4 = number3 * 10 +2……依次类推。所以每次加的数字都是原始的数字,而前面乘10的数字number是上一个结果,所以在下面的代码中又设置了新的字母代表最开始设置的数字。
a = int(input("数字:"))
n = int(input("次数:"))
sum = 0
b = a
for i in range(1,n+1):
sum += b
b = b * 10 + a
print(sum)