• python-第二块:random、shutil,json & pickle,shelve模块


    Random module

    import random,string
    print(random.random())             #随机打印小数
    print(random.randint(1,3))         #随机打印范围内整数(包含后面的3)
    print(random.randrange(1,3))       #随机打印范围内整数(不包含后面的3)
    print(random.sample(range(100),2)) #100里随机挑选两个数
    
    str_source = string.ascii_letters + string.digits
    check_word = ""
    for i in range(6):
        check_num = random.randrange(0,6)
        if check_num != i:
            temp = chr(random.randint(65,90))
        else:
            temp = chr(random.randint(0,9))
        check_word +=str(temp)
    print(check_word)
    

      random是随机选取模块,后面有关小程序可以随机生成6位数验证码

    Shutil module

    高级的文件、文件夹、压缩包处理模块

    import shutil  #高级的文件、文件夹、压缩包 处理模块
    with open("文件名") as f1,open("文件名","w") as f2:
        shutil.copyfileobj(f1,f2)                              #将对象1拷贝为对象2
    
    shutil.copy()               #拷贝文件
    shutil.copytree()             #拷贝目录
    shutil.rmtree()               #递归删除
    shutil.make_archive(base_name,format......)         #打包 ,base_name:压缩的文件名
    

      目前对于shutil模块的使用较少,用过shutil来备份文件。

    Json&Pickle module 

    • json,用于字符串 和 python数据类型间进行转换
    • pickle,用于python特有的类型 和 python的数据类型间进行转换

    Json模块提供了四个功能:dumps、dump、loads、load

    pickle模块提供了四个功能:dumps、dump、loads、load

      首先使用json或pickle序列化

    #序列化
    import json     #json模块通用于各大语言,使用json进行转换
    import pickle   #只适应于python
    
    info ={
        "name":"dzk",
        "age":23
    }
    
    f = open("test","w")
    f.write(json.dumps(info))  # == json.dump(info,f)
    f.close()
    

      然后使用json或pickle反序列号

    #序列化
    import json     #json模块通用于各大语言,使用json进行转换
    import pickle
    
    f = open("test","r")
    date = json.loads(f.read())   # == json.load(f)
    print(date)
    f.close()
    

    Shelve module

      shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式

    import shelve
    
    def date(name,age):
        print("hello",name,age)
    
    f = shelve.open("shelve_test")
    
    print(f["she_dict"])
    print(f["she_list"])
    print(f["she_def"]("dzk",23))
    

      最后会生成三个文件,shelve_test.bak,shelve_test.bat,shelve_test.dir      

    文件内容为:

    'she_list', (512, 35)
    'she_dict', (0, 45)
    'she_def', (1024, 20)

    这个模块功能暂没用过
  • 相关阅读:
    一个很好的在线测试编辑器(可以在线运行很多程序)
    基于angular的route实现单页面cnodejs
    微博
    jsonp跨域再谈
    打开IIS的快捷键
    PHPCMS笔记第二弹
    phpcms ——模板标签详细使用说明
    PHP流程管理,堪比小小程序
    PHP的简单易懂文件管理,可实现基本功能
    使用php ajax写省、市、区、三级联动
  • 原文地址:https://www.cnblogs.com/japhi/p/6894891.html
Copyright © 2020-2023  润新知