zoukankan      html  css  js  c++  java
  • python3的一些练习题

    下面是最近写的一些python3版本的一些练习题:

    1、4+44+444+4444+.....+=?

    root@wadeson:~/study_for_python/homework# cat aa.py
    #!/usr/bin/python3
    
    n = int(input("please input a number: "))
    init_num = int(input("pleasr input a init number: "))
    total = 0
    num1 = 0
    
    for i in range(n):
        num1 = num1 + (10**i)*init_num
        total = total + num1
    
    print(total)

    运行结果:

    root@wadeson:~/study_for_python/homework# python3 aa.py
    please input a number: 3
    pleasr input a init number: 4
    492

    2、九九乘法表:

    root@wadeson:~/study_for_python/circle# cat while_about_nine2.py
    #!/usr/bin/python3
    
    num1 = 1
    while num1 <= 9:
        num2 = 1
        while num2 <= 10 - num1:          # num2从9开始依次减小
            print("%d * %d = %d" % (num2,num1,num1*num2), end=" ")       # num2总是从1开始循环,并且循环到num1的值,end=" "表示不换行,空格间隔
            num2 = num2 + 1
        print()                # 作用是换行
        num1 = num1 + 1

    运行如下:

    root@wadeson:~/study_for_python/circle# python3 while_about_nine2.py
    1 * 1 = 1 2 * 1 = 2 3 * 1 = 3 4 * 1 = 4 5 * 1 = 5 6 * 1 = 6 7 * 1 = 7 8 * 1 = 8 9 * 1 = 9
    1 * 2 = 2 2 * 2 = 4 3 * 2 = 6 4 * 2 = 8 5 * 2 = 10 6 * 2 = 12 7 * 2 = 14 8 * 2 = 16
    1 * 3 = 3 2 * 3 = 6 3 * 3 = 9 4 * 3 = 12 5 * 3 = 15 6 * 3 = 18 7 * 3 = 21
    1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16 5 * 4 = 20 6 * 4 = 24
    1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
    1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24
    1 * 7 = 7 2 * 7 = 14 3 * 7 = 21
    1 * 8 = 8 2 * 8 = 16
    1 * 9 = 9

    或者如下:

    root@wadeson:~/study_for_python/circle# cat while_about_nine.py
    #!/usr/bin/python3
    
    num1 = 1
    while num1<=9:
        num2 = 1
        while num2 <= num1:   # num2依次从1开始增大到9
            print("%d * %d = %d" % (num2,num1,num1*num2), end=" ")
            num2 = num2 + 1
        print()
        num1 = num1 + 1
    root@wadeson:~/study_for_python/circle# python3 while_about_nine.py
    1 * 1 = 1
    1 * 2 = 2 2 * 2 = 4
    1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
    1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
    1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
    1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
    1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
    1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
    1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81

    3、打印*符号:

    root@wadeson:~/study_for_python/circle# cat while_2.py
    #!/usr/bin/python3
    
    
    line = 4
    num = line
    while line > 0:
        num1 = 0
        while num1 <= num - line:
            print("*", end="")
            num1 = num1 + 1
    
        print("")
        line = line - 1

    运行结果如下:

    root@wadeson:~/study_for_python/circle# python3 while_2.py
    *
    **
    ***
    ****
    root@wadeson:~/study_for_python/circle# cat while_1.py
    #!/usr/bin/python3
    
    num = 1
    line = 4
    
    while num <= line:
        num1 = 0
        while num1 <= line - num:
            print("*", end="")
            num1 = num1 + 1
    
        print("")
        num = num + 1
    root@wadeson:~/study_for_python/circle# python3 while_1.py
    ****
    ***
    **
    *

    4、验证账户信息,如果是锁住的账户,则直接登录失败;如果没有注册的账户,请先进行注册;如果输入账号密码错误三次则锁住该账户;如果登录成功,则打印成功信息

    root@wadeson:~/study_for_python/homework# cat authenticate_user_land.py
    #!/usr/bin/python3
    import getpass
    
    user_list = {}
    lock_user = []
    
    # 读取文件中的的账号和密码保存在用户字典中
    with open("user_list.txt","r") as f1:
        for i in f1.readlines():
            (user,passwd) = i.strip().split()
            user_list[user] = passwd
    
    # 读取锁用户文件中的user保存在列表中
    with open("lock_user.txt","r") as f2:
        for i in f2.readlines():
            user = i.strip()
            lock_user.append(user)
    
    
    user_get=input("please input user:")
    passwd_get=getpass.getpass("please input password:")
    T = 0
    
    while T < 2:
        # 当输入的名字存在于锁用户中时,直接退出
        if user_get in lock_user:
            print("your user %s has been locked,please contact administrator" % user_get)
            break
        # 当输入的用户不存在锁用户中:1,账号密码进行判断三次  2,账号不存在
        else:
            if  user_get not in user_list.keys():
                print("user %s is not exist,please register!" % user_get)
                break
            else:
                if passwd_get == user_list[user_get]:
                    print("welcome to %s" % user_get)
                    break
                else:
                    print("your password is wrong,please try again")
                    T = T + 1
        user_get=input("please input user:")
        passwd_get=getpass.getpass("please input password:")
    
    else:
        print("your user %s has been locked!" % user_get)
        lock_user.append(user_get)
        with open("lock_user.txt","w") as f_lock:
            for i in lock_user:
                f_lock.write("%s
    " % i)
    root@wadeson:~/study_for_python/homework# cat lock_user.txt
    user1
    wadeson
    root@wadeson:~/study_for_python/homework# cat user_list.txt
    wadeson    redhat
    jsonhc     redhat
    root@wadeson:~/study_for_python/homework# python3 authenticate_user_land.py
    please input user:wadeson
    please input password:
    your user wadeson has been locked,please contact administrator
    L1 = [1, 2, 3, 4, 5]
    L2 = ["a", "b", "c", "d", "e"]
    L = ['1a', '2b', '3c', '4d', '5e']
    L1 = [1, 2, 3, 4, 5]
    L2 = ["a", "b", "c", "d", "e"]
    L = []
    i = 0
    j = 0
    while i < len(L1):
        while j < len(L2):
            t = "%s%s" % (L1[i], L2[j])
            L.append(t)
            j = j + 1
            i = i + 1
    print(L)

    持续更新中

  • 相关阅读:
    184. Department Highest Salary【leetcode】sql,join on
    181. Employees Earning More Than Their Managers【leetcode】,sql,inner join ,where
    178. Rank Scores【leetcode】,sql
    177. Nth Highest Salary【leetcode】,第n高数值,sql,limit,offset
    176. Second Highest Salary【取表中第二高的值】,sql,limit,offset
    118. Pascal's Triangle【LeetCode】,java,算法,杨辉三角
    204. Count Primes【leetcode】java,算法,质数
    202. Happy Number【leetcode】java,hashSet,算法
    41. First Missing Positive【leetcode】寻找第一个丢失的整数,java,算法
    删除
  • 原文地址:https://www.cnblogs.com/jsonhc/p/7955643.html
Copyright © 2011-2022 走看看