zoukankan      html  css  js  c++  java
  • Python30个基础题(一)

    1、冒泡排序

    lis = [58, 12, 1, 8, 354, 10, 100, 34, 56, 7, 23, 456, 234, -44, -22]
    
    for i in range(len(lis)-1):
        for j in range(len(lis)-1-i):
            if lis[j] > lis[j+1]:
                lis[j], lis[j+1] = lis[j+1], lis[j]
    print(lis)
    
    输出结果:
    [-44, -22, 1, 7, 8, 10, 12, 23, 34, 56, 58, 100, 234, 354, 456]

    2、计算x的n次方的方法

    def power(x, n):
        s = 1
        while n > 0:
            n = n - 1
            s = s * x
        return s
    if __name__ == '__main__':
        print(power(3, 4))
    
    输出结果:
    81

    3、计算a*a + b*b + c*c + ……

    def calc(*numbers):
        sum = 0
        for n in numbers:
            sum = sum + n * n
        return sum
    if __name__ == '__main__':
        print(calc(3, 2, 1, 5))
    
    输出结果:
    39

    4、计算阶乘 n!

    def fac():
        num = int(input("请输入一个数字"))
        factorial = 1
    
    # 查看数字是0或正数或负数
        if num < 0:
            print("抱歉,负数没有阶乘!")
        elif num == 0:
            print("0的阶乘为1")
        else:
            for i in range(1, num + 1):
                factorial = factorial * i
            print("%d的阶乘为%d" % (num, factorial))
    
    if __name__ == '__main__':
        fac()
    
    输出结果:
    请输入一个数字7
    7的阶乘为5040

    5、打印当前文件所在目录

    import os
    l = [d for d in os.listdir('.')]
    print(l)
    
    输出结果:
    ['a1.py', 'a2.py', 'a3.py', 'a4.py', 'a5.py', 'token.yaml', '上传图片.py', '数据驱动ddt.py', '爬虫图片.py', '获取时间戳.py', '获取路径.py', '读取excel数据.py']

    6、把一个list中所有的字符串变成小写

    l = ['Hello', 'WORld', 'IBM', 'Apple']
    s = [s.lower() for s in l]
    print(s)
    
    输出结果:
    ['hello', 'world', 'ibm', 'apple']

    7、输出某个路径下的所有文件和文件夹的路径

    import os
    def print_dir():
        filepath = input("请输入一个路径:")
        if filepath == "":
            print("请输入正确路径")
        else:
            for i in os.listdir(filepath):              # 获取目录中的文件及子目录列表
                print(os.path.join(filepath, i))        # 把路径组合起来
    
    print(print_dir())
    
    输出结果:
    请输入一个路径:E:/wwwJK/
    E:/wwwJK/.git
    E:/wwwJK/.idea
    E:/wwwJK/aaaaa
    E:/wwwJK/case
    E:/wwwJK/common
    E:/wwwJK/config
    E:/wwwJK/logs
    E:/wwwJK/report

    8、输出某个路径及其子目录下的所有文件路径

    import os
    def show_dir(filepath):
        for i in os.listdir(filepath):
            path = (os.path.join(filepath, i))
            print(path)
            if os.path.isdir(path):             # isdir()判断是否是目录
                show_dir(path)                  # 如果是目录,使用递归方法
    filepath = "E:/wwwJK/aaaaa"
    print(show_dir(filepath))
    
    输出结果:
    E:/wwwJK/aaaaaa1.py
    E:/wwwJK/aaaaaa2.py
    E:/wwwJK/aaaaaa3.py
    E:/wwwJK/aaaaaa4.py
    E:/wwwJK/aaaaaa5.py

    9、输出某个路径及其子目录下所有以.html为后缀的文件

    import os
    def print_dir(filepath):
        for i in os.listdir(filepath):
            path = (os.path.join(filepath, i))
            if os.path.isdir(path):             # isdir()判断是否是目录
                print_dir(path)                 # 如果是目录,使用递归方法
            if path.endswith(".html"):
                print(path)
    
    filepath = "E:/wwwJK"
    print(print_dir(filepath))
    
    输出结果:
    E:/wwwJK
    eport2019_01_31 11_24result.html

    10、把原字典的键值对颠倒并生产新的字典

    dict1 = {"A":"a", "B":"b", "C":"c"}
    dict2 = {y:x for x,y in dict1.items()}
    print(dict2)
    
    输出结果:
    {'a': 'A', 'b': 'B', 'c': 'C'}
  • 相关阅读:
    Java 学习笔记之 线程interrupted方法
    Java 学习笔记之 线程interrupt方法
    定义函数
    调用函数
    pass语句
    循环
    条件语句
    别样赋值
    import语句
    字典方法
  • 原文地址:https://www.cnblogs.com/yitao326/p/10341464.html
Copyright © 2011-2022 走看看