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()
相关推荐
财经资讯数据_灵砚智能1 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年5月13日
大数据·人工智能·python·信息可视化·自然语言处理
m0_470857642 分钟前
c++怎么利用C++17的filesystem--copy实现高效文件夹克隆【详解】
jvm·数据库·python
duke8692672143 分钟前
HTML怎么区分正文与广告_HTML aside与广告位语义【技巧】
jvm·数据库·python
咕噜咕噜啦啦5 分钟前
RTX5090配置DGL
pytorch·python·conda·pip
霑潇雨17 分钟前
Spark学习基础转换算子案例(单词计数(WordCount))
java·大数据·分布式·学习·spark·maven
2401_8246976622 分钟前
如何实现SQL存储过程状态监控_编写实时运行监控仪表盘
jvm·数据库·python
iAm_Ike25 分钟前
c++怎么在写入文件流时通过peek预读功能实现复杂的逻辑判断【实战】
jvm·数据库·python
dFObBIMmai27 分钟前
mysql如何确保主从数据完全同步_开启半同步复制机制
jvm·数据库·python
才兄说32 分钟前
机器人二次开发机器狗巡检?长距离最优路径
python
m0_470857641 小时前
CSS如何实现Bootstrap进度条自定义动画_利用keyframe关键帧
jvm·数据库·python