python学习-10【模块】

1、认识模块

导入模块
  • 使用 import 语句

  • 使用 from ... import 语句
    1、import modulename [as alias]

  • modulename:表示要导入的模块名

  • as alias:可选参数,为模块起的别名
    2、from modulename import name

  • modulename:模块名,区分大小写

  • name:要导入的变量、函数、类等。(如果需要导入模块中的全部 name,可以使用 * 代替

name = 'main'

当一个程序文件中包含了 name = 'main',表示当前文件会直接运行,且只会在该文件下运行

2、Python 标准库

sys
  • sys.argv 可以从程序外部向程序中传递参数,可以获取命令行中传递的参数,并以列表的形式返回
  • sys.patfrom 可以获取当前的系统平台,即当前的操作系统
  • sys.exit 实现程序中途退出
  • sys.path 获取模块的路径
  • sys.modules 搜索导入的模块(所有加载到内存的模块都会放在 sys.modules 这个全局字典中)
    • sys.modules.values() 获取模块的值
os
  • os.environ.items() 获取系统环境变量
  • os.path.isfile() 判断给定的路径是否为文件
math
  • 圆周率 Π(math.pi)

  • 自然常数(math.e)

  • math.pow() 指数运算

    python 复制代码
    import math
    result = math.pow(2, 3) # 2 的 3 次方
  • math.sqrt() 计算一个数字的平方根

    python 复制代码
    import math
    result = math.sqrt(8)
  • math.ceil() 向上取整

    python 复制代码
    import math
    result = math.ceil(2.8) # 返回 3
  • math.floor() 向下取整

  • math.degrees() 可以将弧度转换为角度

  • math.radians() 可以将角度转换为弧度

  • 计算三角函数:math.sin()、math.cos()、math.tan()(x 必须为弧度)

random

1、random.random() 随机生成 0 到 1 之间的浮点数

() 中不用指定任何数字,数的范围为(0 <= n < 1)

python 复制代码
import random
num1 = random.random()

2、random.randint() 随机生成指定范围的整数

在 () 中需要指定两个数字

python 复制代码
import random
num1 = random.randint(10, 50)

3、random.uniform() 随机生成指定范围的浮点数

在 () 中需要指定两个整数

python 复制代码
import random
num1 = random.uniform(10, 50)

4、random.choice() 从序列中获取随机元素

python 复制代码
import random
tuple1 = (1, 2, 3, 4, 5, 6)
num1 = random.choice(tuple1)

3、常用的 Python 模块

时间日期模块

1、time 模块

  • time() 函数可以返回当前的时间戳,返回的是浮点数

  • localtime() 函数将时间戳格式化为本地时间,返回的是 struct_time 对象

    序号 属性
    0 tm_year(年) 比如 2020
    1 tm_mon(月) 1 到 12
    2 tm_mday(日) 1 到 31
    3 tm_hour(时) 0 到 23
    4 tm_min(分) 0 到 59
    5 tm_sec(秒) 0 到 61(60 或 61 是闰秒)
    6 tm_wday(一周的第几日) 0 到 6(0 表示周一)
    7 tm_yday(一年中的第几日) 1 到 366
    8 tm_isdst(是否为夏令时) 有三个值 -1、0、1,默认值 - 1 表示夏令时
  • asctime() 用于接收时间元组并返回可读形式的时间字符串

  • sleep() 函数可以让程序休眠,即推迟调用线程的运行。

    该函数接收秒数,表示休眠的时间

  • time.ctime() 函数可以将一个时间戳转化为 time.asctime() 的形式

2、datetime 模块

  • date.MINYEAR:0001

  • date.MAXTEAR:9999

  • date() 函数返回一个包含年月日的日期

    • today() 获取当前的日期

    • strftime格式化输出日期

      符号 说明
      %y 表示两位数的年份(00-99)
      %Y 表示四位数的年份(0001-9999)
      %m 月份(01-12)
      %d 一月中的某一天(0-31)
      %H 小时,24小时制(0-23)
      %I 小时,12小时制(01-12)
      %M 分钟(00-59)
      %S 秒(00-59)
      %a 本地简化后的星期名称
      %A 本地完整的星期名称
      %b 本地简化后的月份名称
      %B 本地完整的月份名称

3、calendar 模块

  • month() 方法接受 4 个参数:year(must)、month(must)、w(每日宽度间隔)、I(每行的长度)
  • calendar() 方法返回一个具有多行字符串格式的年历,每 3 个月 1 行
数据加密模块

1、MD5 加密

可以交任意长度的数据加密并压缩成固定长度的数据值,该加密技术属于单向加密

python 复制代码
import hashlib
msg = 'abcdefg'
md5_info = hashlib.md5(msg.encode())
encryption = md5_info.hexdigest()

2、SHA 加密

通过散列哈希函数进行数据加密。

SHA-1 会产生 160 位的报文摘要并输出

python 复制代码
import hashlib
msg = 'abcdefghij'
sha_info = hashlib.sha1(msg.encode())
encryption = sha_info.hexdigest()
相关推荐
qq_5290252914 分钟前
Torch.gather
python·深度学习·机器学习
数据小爬虫@14 分钟前
如何高效利用Python爬虫按关键字搜索苏宁商品
开发语言·爬虫·python
Cachel wood1 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
Code哈哈笑1 小时前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
終不似少年遊*1 小时前
pyecharts
python·信息可视化·数据分析·学习笔记·pyecharts·使用技巧
Python之栈1 小时前
【无标题】
数据库·python·mysql
袁袁袁袁满1 小时前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
老大白菜2 小时前
Python 爬虫技术指南
python
QQ同步助手2 小时前
如何正确使用人工智能:开启智慧学习与创新之旅
人工智能·学习·百度
流浪的小新2 小时前
【AI】人工智能、LLM学习资源汇总
人工智能·学习