python学习之内置模块

什么是模块

py文件或py文件的集合,为完成某一特定功能的而写的代码

模块的分类

根据作者而分:

  • 系统模块(python官方提供的、内置的模块)又称内置模块
    特点:已经安装在系统中,使用时需要导入,builtins默认被导入
  • 第三方模块(非官方的,由第三方提供的)
    特点:必须安装才能使用
  • 自定义模块
    特点:自己编写的py文件 可导入到其他py文件中使用

模块的导入

  • 单层
    import package
  • 多层
    import package.module
    from package import module

常见的模块

今天我们来学习常见系统模块(内置模块)及其常用方法:

  • random模块:产生一个随机数 使用前必须导入 import random
    dir(random):查看模块的所有方法
    help(random)帮助文档:当某一方法不知道使用方法时,可调用帮助文档
    random():返回一个【0,1)随机数,伪随机数(基于一个算法实现的)
    在这里插入图片描述
    randint(m,n):返回一个【m,n】的随机整数
    在这里插入图片描述
    choice(seq):返回一个非空序列中的随机值
    在这里插入图片描述
    randrange(m,n):返回一个【m,n)的随机整数
    在这里插入图片描述

  • math模块:该模块存在与大量语言中,一般这个模块都是操作数学元素的,import math

    dir(math):查看math模块所有方法
    ceil():向上取整,只要小数位有值,一般向上取整
    在这里插入图片描述
    floor():向下取整,只要小数位有值,一般向下取整
    在这里插入图片描述
    pi:属性,圆周率π
    在这里插入图片描述
    fabs():求绝对值
    在这里插入图片描述
    fmod(x,y):求模,x%y
    在这里插入图片描述
    pow(x,y):幂次方 x的y次方
    在这里插入图片描述
    sqrt(x):求x的平方根
    在这里插入图片描述
    注:以下模块不好演示,在此只介绍其常用方法及作用

  • os模块:主要用来操作 系统中的文件系统
    dir(os):查看os模块的所有方法
    curdir:该属性表示当前路径,但显示的是相对路径
    getcwd():获取当前路径,显示的是绝对路径
    chdir(path):改变当前工作目录
    chmod():修改权限
    cpu_count():获取当前CPU核数
    listdir():遍历得到当前工作空间的所有文件,以列表的形式返回
    mkdir():创建文件夹,注:只能创建一层
    makedirs():可创建多级文件夹
    remove():删除文件
    removedirs():删除文件夹,可以多级删除
    rename(src,dst):重命名
    rmdir():删除文件夹,只能删一级(默认最后一级)
    scandir():遍历得到当前工作空间的所有文件,返回一个迭代器
    sep():返回系统对应的文件分隔符
    system():该方法可以执行该系统对应的所有终端命令

  • os.path模块:os模块的子模块,主要是用来操作文件的
    abspath():显示相对路径的绝对路径
    basename():显示路径对应的文件名称
    exists():判断文件或文件夹是否存在
    getsize():获取文件大小
    isdir():判断是否是目录
    isfile():判断是否是文件
    join():拼接路径
    split():分隔文件路径

  • sys模块
    重要的方法,必须掌握:
    argv():返回脚本名称和执行脚本时传递的参数
    exit():退出系统
    getdefaultencoding():获取系统的默认编码
    getfilesystemencoding():获取系统文件的编码
    getrecursionlimit():获取系统对于递归的层数限制
    setrecursionlimit():设置系统对于递归的层数限制,不建议使用
    getrefcount():获取变量的引用计数
    path():返回系统变量路径列表
    不重要,仅作了解:
    platform():返回系统平台
    stderr():标准错误输出
    stdin():标准输入
    stdout():标准输出
    thread_info():线程信息
    version():解释器版本信息
    version_info():解释器内核版本信息

  • hashlib模块:编程中,进行加密
    md5.():MD5加密
    用法:

#第一种写法
import hashlib
md5 = hashlib.md5("要加密的数据".encode("utf-8"))
md5.update("aishangwang".encode("utf-8"))      #盐值混淆
md5.hexdigest()               #得到需要加密数据的散列值
#第二种写法
md5 = hashlib.md5()
md5.update("要加密的数据".encode("utf-8"))
md5.update("aishangwang".encode("utf-8"))
md5.hexdigest()

加密算法的分类
以是否可逆来分:

  • 可逆算法
    1、对称加密算法(加密解密使用一个密钥)
    2、非对称加密算法(加密解密使用一对密钥)

  • 不可逆算法
    1、hash算法:唯一性,不可逆性(MD5,shale256,…)可以将任何东西加密为32位的16进制的字符串
    注:MD5安全问题,有数据碰撞的概率,使用hash时,建议使用盐值混淆
    注:python的垃圾回收机制:以引用计数为主,已标记清除和分代收集为辅

  • time模块:python中专门用来操作时间和日期的模块
    sleep(x):让当前线程暂停x秒
    time():返回的是当前时间戳,1970-1-1 0:0:0 到当前时间的秒数
    ctime():获取当前时间
    localtime():返回本地时间对象
    strftime():将一个时间对象格式化为特定字符串
    strptime():将一个特定字符串解析为时间对象

  • datetime.datetime模块:
    now():获取当前系统时间

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值