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()
相关推荐
灏瀚星空34 分钟前
在 Visual Studio Code 中高效使用 Pylance:配置、技巧与插件对比
ide·经验分享·vscode·python·编辑器·学习方法
无极低码1 小时前
FLASK和GPU依赖安装
后端·python·flask
星际编程喵2 小时前
Flask实时监控:打造智能多设备在线离线检测平台(升级版)
后端·python·单片机·嵌入式硬件·物联网·flask
钢铁男儿3 小时前
Python 生成数据(随机漫步)
开发语言·python·信息可视化
赛卡3 小时前
自动驾驶背后的数学:特征提取中的线性变换与非线性激活
人工智能·python·机器学习·自动驾驶·numpy
正经教主3 小时前
【菜鸟飞】在vsCode中安装python的ollama包出错的问题
开发语言·人工智能·vscode·python·ai·编辑器
晴空对晚照3 小时前
[动手学习深度学习]26. 网络中的网络 NiN
网络·深度学习·学习
gzgenius4 小时前
独立部署DeepSeek 大语言模型(如 DeepSeek Coder、DeepSeek LLM)可以采用什么框架?
人工智能·学习·架构·deepseek
墨绿色的摆渡人4 小时前
pytorch小记(十):pytorch中torch.tril 和 torch.triu 详解
人工智能·pytorch·python
神秘的土鸡4 小时前
Centos搭建Tomcat服务器:我的实战经验分享(成功版本 详细!)
linux·开发语言·python·tomcat·web