2020年1月14日-统计+其它

2020年1月14日

4、输出10行内容,每行的内容都是第一行10个,第二行9个,第三行8个。。。。最后一行1个星
for i in range(10,0,-1):
    print("*"*i)

>>> for i in range(10,0,-1):
...     print("*"*i)
...
**********
*********
********
*******
******
*****
****
***
**
*
>>>

 

5、输出9行内容,,第1行输出1,第2行输出12,第3行输出123,以此类推,第9行输出123456789
result=""
for i in range(1,10):
    result+=str(i)
    print(result)
>>> result=""
>>> for i in range(1,10):
... result+=str(i)
... print(result)
...
1
12
123
1234
12345
123456
1234567
12345678
123456789

6、计算2的20次方。不允许用**和pow()
result=2
for n in range(20):
    result*=2

print(result)
执行结果:
>>> result=2
>>> for n in range(20):
...     result*=2
...
>>> result
2097152
>>>

统计字母的个数
方法一:
s = "Askfr1212kk!000@@999"
letter_num=0
for c in s:
    if c.isalpha():
        letter_num[c]=s.count(c)

print(letter_num)

 

统计字符串中字母、数字、其它类型的数量
方法一
s = "Askfr1212kk!000@@999"
letter_num=0
num=0
punc_num=0
for c in s:
    if c.isalpha():
        letter_num+=1 
    elif c.isdigit():
        num+=1
    else:
        punc_num+=1

print("字母有:%s个,数字有:%s个,其它字符有:%s个"%(letter_num,num,punc_num))
执行结果:
>>> print("字母有:%s个,数字有:%s个,其它字符有:%s个"%(letter_num,num,punc_num))
字母有:7个,数字有:10个,其它字符有:3个
>>>
>>>

46、求1+2!+3!+...+20!的和。
def fac(n):
if n==1: return 1 else: return n*fac(n-1) result=0 for i in range(1,21): print(fac(i)) result+=fac(i) print("和为:",result) 执行结果: ... 1 2 6 24 120 720 5040 40320 362880 3628800 39916800 479001600 6227020800 87178291200 1307674368000 20922789888000 355687428096000 6402373705728000 121645100408832000 2432902008176640000 >>> print("和为:",result) 和为: 2561327494111820313 >>> 47、利用递归方法求8!。 def fac(n): if n==1: sum=1 else: sum=n*fac(n-1) return sum print(fac(8)) 执行结果: >>> print(fac(8)) 40320

 

posted @ 2020-01-14 15:01  进阶的淑琴  阅读(90)  评论(0)    收藏  举报