zoukankan      html  css  js  c++  java
  • python基础语法练习

    给n个数字,打印其平均数

    n=0
    sum=0
    
    while 1:
        num=input('>>>')
        if num == 'quit':
            break
        n+=1
        sum+=int(num)
        avg=sum//n
        print('avg is {}'.format(avg))
        

    结果

    >>>1
    avg is 1
    >>>2
    avg is 1
    >>>3
    avg is 2
    >>>quit

    打印九九乘法表

    for i in range(1,10):
        for j in range(1,i+1):
            print('{} * {} = {:<2}'.format(i,j,i*j),end='  ')
        print()     

    结果

    1 * 1 = 1   
    2 * 1 = 2   2 * 2 = 4   
    3 * 1 = 3   3 * 2 = 6   3 * 3 = 9   
    4 * 1 = 4   4 * 2 = 8   4 * 3 = 12  4 * 4 = 16  
    5 * 1 = 5   5 * 2 = 10  5 * 3 = 15  5 * 4 = 20  5 * 5 = 25  
    6 * 1 = 6   6 * 2 = 12  6 * 3 = 18  6 * 4 = 24  6 * 5 = 30  6 * 6 = 36  
    7 * 1 = 7   7 * 2 = 14  7 * 3 = 21  7 * 4 = 28  7 * 5 = 35  7 * 6 = 42  7 * 7 = 49  
    8 * 1 = 8   8 * 2 = 16  8 * 3 = 24  8 * 4 = 32  8 * 5 = 40  8 * 6 = 48  8 * 7 = 56  8 * 8 = 64  
    9 * 1 = 9   9 * 2 = 18  9 * 3 = 27  9 * 4 = 36  9 * 5 = 45  9 * 6 = 54  9 * 7 = 63  9 * 8 = 72  9 * 9 = 81  

    九九乘法表其他打印方式

    1、左对齐

    for i in range(1,10):
        for j in range(9,i-1,-1):
            print('{} * {} = {:<2}'.format(i,j,i*j),end='  ')
        print()

    结果

    1 * 9 = 9   1 * 8 = 8   1 * 7 = 7   1 * 6 = 6   1 * 5 = 5   1 * 4 = 4   1 * 3 = 3   1 * 2 = 2   1 * 1 = 1   
    2 * 9 = 18  2 * 8 = 16  2 * 7 = 14  2 * 6 = 12  2 * 5 = 10  2 * 4 = 8   2 * 3 = 6   2 * 2 = 4   
    3 * 9 = 27  3 * 8 = 24  3 * 7 = 21  3 * 6 = 18  3 * 5 = 15  3 * 4 = 12  3 * 3 = 9   
    4 * 9 = 36  4 * 8 = 32  4 * 7 = 28  4 * 6 = 24  4 * 5 = 20  4 * 4 = 16  
    5 * 9 = 45  5 * 8 = 40  5 * 7 = 35  5 * 6 = 30  5 * 5 = 25  
    6 * 9 = 54  6 * 8 = 48  6 * 7 = 42  6 * 6 = 36  
    7 * 9 = 63  7 * 8 = 56  7 * 7 = 49  
    8 * 9 = 72  8 * 8 = 64  
    9 * 9 = 81  

    2、右对齐

    for i in range(1,10):
        print(' '*13*(i-1),end='')
        for j in range(i,10):
            print('{} * {} = {:<3}'.format(i,j,i*j),end='  ')     
        print()

    结果

    1 * 1 = 1    1 * 2 = 2    1 * 3 = 3    1 * 4 = 4    1 * 5 = 5    1 * 6 = 6    1 * 7 = 7    1 * 8 = 8    1 * 9 = 9    
                 2 * 2 = 4    2 * 3 = 6    2 * 4 = 8    2 * 5 = 10   2 * 6 = 12   2 * 7 = 14   2 * 8 = 16   2 * 9 = 18   
                              3 * 3 = 9    3 * 4 = 12   3 * 5 = 15   3 * 6 = 18   3 * 7 = 21   3 * 8 = 24   3 * 9 = 27   
                                           4 * 4 = 16   4 * 5 = 20   4 * 6 = 24   4 * 7 = 28   4 * 8 = 32   4 * 9 = 36   
                                                        5 * 5 = 25   5 * 6 = 30   5 * 7 = 35   5 * 8 = 40   5 * 9 = 45   
                                                                     6 * 6 = 36   6 * 7 = 42   6 * 8 = 48   6 * 9 = 54   
                                                                                  7 * 7 = 49   7 * 8 = 56   7 * 9 = 63   
                                                                                               8 * 8 = 64   8 * 9 = 72   
                                                                                                            9 * 9 = 81   

    打印菱形

     第一种,双循环

    for i in range(1,9,2):
        print('{:^7}'.format('*'*i))
    for j in range(5,0,-2):
        print('{:^7}'.format('*'*j))

    第二种,根据图形的结构可以看出是中心对称

    for i in range(-3,4):
        if i <0:
            print('{:^7}'.format('*'*(7-(-i*2))))
        else:
            print('{:^7}'.format('*'*(7-(i*2))))

    打印闪电

    for i in range(-3,4):
        if i <0:
            print('{}{}'.format(' '*-(i),'*'*(4-(-i))))
        elif i == 0:
            print('*'*7)
        else:
            print('{:3}{}'.format(' '*i,'*'*(4-i)))

    打印20以内的斐波那契数列

     

    a=0
    b=1
    for i in range(20):
        c=a+b
        a=b
        b=c
        print(c,end=' ')

    结果

    1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 

    求斐波那契数列第21项

    a=0
    b=1
    count=0
    for i in range(21):
        c=a+b
        a=b
        b=c
        count +=1
        if count == 21:
            break
    print(c)

    求100以内的素数

    for i in range(2,100):
        for j in range(2,int(i**0.5)+1):
            if i %j==0:
                break
        else:
            print(i,end=' ')

    结果

    2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 

    猴子吃桃问题

    猴子有一堆桃子,每天吃掉一半,觉得不过瘾,又多吃一个。到第九天看到只剩1个桃子了,求桃子数量

    i=1
    for _ in range(1,10):
        i=2*i+2
    print(i)

    结果

    1534
  • 相关阅读:
    5. Longest Palindromic Substring
    4. Median of Two Sorted Arrays(topK-logk)
    apache开源项目--Derby
    apache开源项目--Apache Drill
    apache开源项目-- OODT
    apache开源项目--Mavibot
    apache开源项目--ApacheDS
    apache开源项目--TIKA
    apache开源项目--Mahout
    apache开源项目--Jackrabbit
  • 原文地址:https://www.cnblogs.com/zh-dream/p/13341247.html
Copyright © 2011-2022 走看看