天天看点

常用模块——math,random,os

  1. math模块

    '''
    math模块:数学模块    方便一些数据计算
    '''
    import math
    print(math.pi)
    r = 12.89636
    print(math.ceil(r))  # 13  向上取整
    print(math.floor(r))  # 12  向下取整
    print(math.factorial(4))  # 阶乘  4*3*2*1---> 24
    print(math.pow(4, 3))  # pow(m,n) 表示的是m的n次方
    print(math.fabs(-19.65))  # 绝对值
    print(math.sqrt(10))  # 10开平方
    print(abs(-19.65))
    # builtins.py  模块默认加载
    # print(),max(),list(),str(),id(),type()
    # import builtins
               
  2. random模块

    '''
     random模块:
        print(random.random())  # 生成 [0,1)的随机浮点数
        print(random.uniform(20, 30))  # 生成[20,30]的随机浮点数
        print(random.randint(10, 30))  # 生成[10,30]的随机整数
        print(random.randrange(20, 30))  # 生成[20,30)的随机整数
        print(random.choice('abcdefg'))  # 从列表里随机取出一个元素
        print(random.sample('abcdefghij', 3)) # 从列表里随机取出指定个数的元素
    '''
    import random
    
    # 获取[0,1)之间的小数
    ran = random.random()
    print(ran)
    code = ''
    s = 'qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASDFGHJKLZXCVBNM'
    for i in range(4):
        ran = random.choice(s)
        print(ran)
        code += ran
    print(code)
    names = ['aaa', 'bbb', 'ccc', 'ddd']
    # name = random.choice(names)
    # print('表演节目的是:',name)
    name = random.sample(names, 2)  # 指定个数的随机获取元素
    print('表演节目的是:', name)
    r = random.randrange(1, 20)  # 给定范围回去随机数randrange(start,stop,step=1)
    print(r)
    # random.randint(1,20)
    r = random.uniform(1, 20)
    print(r)
               
  3. os模块

    '''
      os:开发中会涉及文件和路径的操作
      mkdir(‘文件夹名字|路径’)
      getcwd()  获取当前路径
      rmdir()  也可以删除文件夹,只能删除空的文件夹
      remove()  删除文件
      import shutil
      shutil.rmtree()  ----> 删除有内容文件夹
    '''
    import os
    
    # os.mkdir('files')  # 如果文件夹已经存在则报错FileExistsError:  当文件已存在时,无法创建该文件。: 'files'
    print(os.getcwd())  # 获取当前文件所在的位置(路径) C:\Users\running\PycharmProjects\day12_模块
    os.chdir('files')
    print(os.getcwd()) 
    # print(a)
    # result = os.remove('files')
    # print(result)
    # # os.mkdir(r'c:\foo\files')
    # result =os.remove(r'c:\foo\files\a1.py')
    # print(result)
    # 推荐删除文件夹
    # import shutil
    # shutil.rmtree('files')
    
    # 案例
    import os
    
    # os.rmdir('files')
    # 是否是文件夹
    r = os.path.isdir(r'c:\foo\a1.txt')
    print(r)
    # 是否是文件判断
    r = os.path.isfile(r'c:\foo\a1.txt')
    print(r)
    # 获取目录下的所有的子文件
    file_list = os.listdir(r'c:\foo')
    print(file_list)
    for i in file_list:
        # os.path.join(path1,path2..)  拼接路径
        path = os.path.join(r'c:\foo', i)
        print(path)
        r = os.path.isfile(path)
        print("isfile:", r)
        r = os.path.isdir(path)
        print("isdir:", r)
    # 删除一个文件夹中所有文件
    files = os.listdir(r'c:\foo\files')
    # 遍历删除
    for file in files:
        path = os.path.join(r'c:\foo\files', file)
        if os.path.isfile(path):
            os.remove(path)
    print('删除完毕')
    
    '''
    os模块: 其他方法
    '''
    import os
    # os.chdir(r'c:\foo\files')
    # open('a1.txt','w')
    # print(os.environ)
    # print(os.environ.get('OS'))
    # print(os.environ.get('PATH'))
    # path = os.path.abspath('a1.txt')  # absolute path
    # print(path)
    # # os.remove(path)
    # result = os.path.split(r'C:\Users\running\PycharmProjects\day12_模块\a1.txt')
    # print(result)
    # result = os.path.dirname(r'C:\\Users\\running\\PycharmProjects\\day12_模块')
    # print(result)
    # abspath = os.path.abspath(__file__)
    # print(abspath)  # C:\Users\running\PycharmProjects\day12_模块\模块os_6.py
    # path = os.path.dirname(os.path.dirname(abspath))
    # print(path)
    # result = os.path.split(r'C:\Users\running\PycharmProjects\day12_模块')
    # print(result)
    # result = os.path.splitext(r'C:\Users\running\PycharmProjects\day12_模块\a1.html')
    # print(result)
    # result =os.path.splitext('https://www.baidu.com/img/dong_1388792da98c99c5b52f9e39557c31ca.gif')
    # print(result[1])
               

继续阅读