• python shutil模块&random模块


    shutil模块

    import shutil
    
    shutil.copyfileobj(open("os_.py", "r"), open("os_2.py", "w")) # 将文件内容拷贝到另一个文件中,目标文件无需存在
    shutil.copyfile("os_.py", "os_1.py")    # 拷贝文件,目标文件无需存在
    shutil.copymode("os_.py", "os_1.py")    # 仅拷贝权限。内容、组、用户均不变,目标文件必须存在
    shutil.copystat("os_.py", "os_1.py")    # 仅拷贝状态的信息,包括:mode bits, atime, mtime, flags,目标文件必须存在
    shutil.copy("os_.py", "os_1.py")        # 拷贝文件和权限
    shutil.copy2("os_.py", "os_3.py")       # 拷贝文件和状态
    shutil.copytree("test1", "test2",ignore=shutil.ignore_patterns("1"))  # 递归的去拷贝文件夹,目标文件目录不能存在,ignore是排除
    shutil.rmtree("test2")      # 递归的去删除文件夹
    shutil.move("test1", "test3")   # 递归的去移动文件目录,其实就是重命名
    shutil.make_archive(base_name, format, root_dir=None, base_dir=None, verbose=0,dry_run=0, owner=None, group=None, logger=None) # 创建压缩包并返回文件路径,例如:zip、tar
    # base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径,
    # 如 data_bak =>保存至当前路径
    # 如:/tmp/data_bak =>保存至/tmp/
    # format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
    # root_dir: 要压缩的文件夹路径(默认当前目录)
    # owner: 用户,默认当前用户
    # group: 组,默认当前组
    # logger: 用于记录日志,通常是logging.Logger对象
    
    # 压缩示例:
    shutil.make_archive("shutil","zip")          # 将当前目录以zip格式压缩到当前目录
    shutil.make_archive("d:python_study日常学习","tar")   # 将当前目录以tar的格式压缩到d:python_study日常学习目录
    
    # shutil 对压缩包的处理是调用 ZipFile 和 TarFile 两个模块来进行的
    import zipfile, tarfile
    z = zipfile.ZipFile("11.zip","w")
    z.write("a.log")
    z.write("date.date")
    z.close()

    random模块

    random.randint(0,10)  # 在0-10之间随机选一个数,包括10
    random.randrange(0,10) # 在0-10之间随机选一个数,不包括10
    random.random() # 返回一个随机的浮点数
    random.randrange(0,100,2) # 返回0-100之间的偶数,不包括100
    random.choice("shjsdhjbsbk%^^&&**fnu8n787867w5673476dw") #在一个指定的字符串里随机筛选出一个字符
    random.sample("555441fekjfke93",3) #在一个指定的字符串中随机筛选出指定个数的字符,组成一个列表
    string 
    string.ascii_letters          # 返回ascii码中所有字母大小写
    string.ascii_uppercase        # 返回ascii码中所有字母大写
    string.ascii_lowercase        # 返回ascii码中所有字母大写
    string.digits                 # 返回数字0-9
    a = string.ascii_letters
    b = string.digits
    print("".join(random.sample(a+b,6)))  # 制作一个随机验证码
    # 洗牌
    a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    random.shuffle(a) # 可将列表打乱顺序
    print(a)
  • 相关阅读:
    第二个周六——3.9
    女王节,很开心——3.8
    女生节——3.7
    尴尬的一批——3.6
    周二——3.5
    周一——3.4
    Java基本语法_循环练习系列(二)——万年历
    Java基本语法_循环练习系列(一)——模拟双色球
    《剩女郎》的艺术魅力
    剩女郎剧评
  • 原文地址:https://www.cnblogs.com/zt0903/p/10686980.html
Copyright © 2020-2023  润新知