python学习day15 模块(重点)

时间:2021-03-07 19:15:21

模块(重点)

  • python2,与py3的区别

    • py2:range() 在内存中立即把所有的值都创建,xrange() 不会再内存中立即创建,而是在循环时边环边创建.

    • py3:range() 不会再内存中立即创建,而是在循环时边环边创建.

  • sys.exit() 退出程序

  • 函数书写时一定要写注释

  • 复杂代码写注释

  • 构造字典和函数的对应关系,避免重复冗余的if ellse

  • a=1
    b=2
    a,b=b,a#ab值交换
  • 遇到问题解答时一定要问,或者给出多个解答

  • random

    print( random.randint(1,10) )        # 产生 1 到 10 的一个整数型随机数  
    print( random.random() )             # 产生 0 到 1 之间的随机浮点数
    print( random.choice('tomorrow') )   # 从序列中随机选取一个元素
    print( random.randrange(1,100,2) )   # 生成从1到100的间隔为2的随机整数

模块基本知识

1.模块分类

  • 内置模块 : py内部提供的功能,直接使用

    import sys
    sys.argv()
  • 第三方模块 : 需要从第三方下载/安装使用

    #https://pypi.org/
    'pip.exe路径' pip install 需要安装模块的名称         #执行命令
  • 自定义模块:根据需求自我定义模块

    1. 创建文件 file.py
    2. 导入模块 impoort file
    3. 运行模块

2.内置模块

2.1.os模块

  • os.mkedirs() 创建目录和子目录
  • os.rename(a,b) 重命名
  • os.path.jion(a,b) 连接路径
  • os.path.dirname() 文件上一层目录
  • os.path.abspath() 绝对路径
  • os.path.exists() 路径是否存在
  • os.stat().st_size 判断文件大小
  • os.listdir() 查看路径内存在文件
  • os.walk() 查看路径内所有层级文件

2.2.sys模块

  • sys.argv(索引) 取用户输入参数
  • sys.path 默认python取导入模块时,会按照sys.path指定的文件夹去寻找
    • sys.path.append('目录'), 添加自定义模块读取目录

2.3.json模块

json =鸡哥的儿子
鸡哥的儿子是字符串,头衔是:翻译官,擅长翻译列表和字典形式
有两个特殊功能:序列化【dumps】(给别人用)反序列化【loads】(拿来自己用 )
  • json 是一个特殊的字符串(长得像列表/字典/字符串/数字混合)
  • json.dump() 序列化:将列表/字典/字符串/数字转化为json格式的字符串
  • json.loads() 反序列化:序列化的逆向操作
  • json格式要求:
    • 只能包含int/ str/ list/ dict/ bool 不存在元组/集合
    • 最外层必须是一个列表或字典
    • 在json中如果有字符串,必须是双引号"json中的字符串"
    • 真假小写true/false