趁着课余时间学点Python(十五)有趣的小模块

简介: 趁着课余时间学点Python(十五)有趣的小模块



一、Python模块与包

python中模块与包的含义

1. Python模块与包

模块是单个的py文件,包是包含多个py文件的文件夹

1.1 模块

模块是一个py文件

我们自己创建一个py文件就是一个模块

我们可以对他进行导入的操作,然后使用

  1. 自定义模块:textmodel.py
def print_f(a):
    print(a)
  1. 另一个py文件:模块.py
    导入的时候记得要让两个文件同路径
    我们导入自定义模块,然后使用自定义函数
# 第一种方法
import textmodel
textmodel.print_f("第一种方法:直接导入 测试成功")
# 第二种方法
from textmodel import print_f
print_f("第二种方法:精确导入某函数 测试成功")
# 第三种方法
import textmodel as tm
tm.print_f("第三种方法:导入起别名 测试成功")

导入别人的模块和内置模块也可以这样

项目文件夹:

image.png

1.2 包

包就是一个含有__init__.py的文件夹

我们在项目目录下创建一个文件夹text,然后在里面放一个__init__.py的文件

这样就是一个包了

  1. 在text文件夹新建一个textpackage.py
def print_f(a):
    print(a)
  1. 和text同目录的模块.py文件
from text import textpackeg
textpackeg.print_f("包测试成功")

项目文件夹:

image.png

text文件夹:

image.png

2. 有趣有用的库

Python模块千千万,有趣有用占一半。

你是否知道这几个模块呢?他们的作用都是我们平常使用的。让我们一起来看看这些模块吧!

有的模块功能众多,这里只列出一些好玩的功能

2.1 链接生成二维码

你可曾自己动手做过二维码吗?花了多少时间?花了钱吗?

没关系,这个模块两行命令直接将你的网址/链接转成二维码,支持有图背景,无图背景等形式。

模块名:myqr

安装方式:pip自动安装

打开cmd键入

pip install myqr

然后静静等待安装完成就可以了~~

安装完成后,不需要打代码,还是cmd命令界面

使用格式:myqr 网址 -p 自定义图片路径 -c

实例分析:

普通图片二维码:

网址链接:https://blog.csdn.net/m0_52883898
图片地址:C:\ITStudy\ITtools\pythontool\test.jpg
命令:myqr https://blog.csdn.net/m0_52883898 -p C:\ITStudy\ITtools\pythontool\test.png -c

在cmd键入命令后,如果得到这样的提示,就是成功了

line 16: mode: byte
Succeed!
Check out your 4-H QR-code: C:\Users\Smly\test_qrcode.png

打开我们生成的二维码瞅一瞅:

image.png

动态图二维码:

网址链接:https://blog.csdn.net/m0_52883898
图片地址:C:\ITStudy\ITtools\pythontool\test.gif
命令:myqr https://blog.csdn.net/m0_52883898 -p C:\ITStudy\ITtools\pythontool\test.gif -c

成功:

It may take a while, please wait for minutes...
line 16: mode: byte
Succeed!
Check out your 4-H QR-code: C:\Users\Smly\test_qrcode.gif

打开瞅瞅:

2.2 视频转gif

作为博主,有时候会面对一些很苦恼的事情,就是代码效果一张图片塞不下,多张图片不好看,md有没法放视频,所以需要视频转gif,就很有用了。

他就是moviepy库,当然他的功能不仅仅是视频转gif,还有更多功能等你来看哦

  1. 安装pip install moviepy
  2. 写代码
import moviepy.editor as mp
#视频文件的本地路径
con = mpy.VideoFileClip("C:\\ITStudy\\ITtools\\pythontool\\test.mp4")
# 截取帧数
c1 = content.subclip(0, 30)
# 将片段保存为gif到"C:\\ITStudy\\ITtools\\pythontool\\moviepytest.gif"
c1.write_gif("C:\\ITStudy\\ITtools\\pythontool\\moviepytest.gif")
  1. 运行代码,等待运行完成

看看效果:

image.png

2.3 随机数生成

有时会需要使用到随机数,这时候就需要我们的random模块

用法不难,如下:

import random
# 生成10个0-10的整数
for i in range(10):
    print(random.randint(0,10))
# 生成10个0-1的数
for i in range(10):
    print(random.random())

2.4 时间模块

有时候我们会想记录我们代码所运行的实际时间

import time
start = time.time() # 当前时间戳
a = 1000**100000
end = time.time() # 获取计算完成的时间戳
runTime = end - start # 计算所花的时间
print("本次计算耗时:{}".format(runTime))

2.5 词云生成

你是否想要生成一个自己所拥有的词云图呢?这个模块可以帮到你!wordcloud有些依赖模块需要安装,我只介绍简单的词云

安装会有问题,建议下载源代码,使用文件安装,不适用pip

英文词云:

from wordcloud import WordCloud
# 1.读入txt文本数据
text = open(r'test.txt', "r",encoding = 'utf-8').read()
# 2.生成词云图,这里需要注意的是WordCloud默认不支持中文
# 无自定义背景图:需要指定生成词云图的像素大小,默认背景颜色为黑色,统一文字颜色:mode='RGBA'
wc = WordCloud(
        # 设置背景色
        background_color='white',
        # 设置背景宽
        width=500,
        # 设置背景高
        height=350,
        # 最大字体
        max_font_size=50,
        # 最小字体
        min_font_size=10,
        mode='RGBA',
)
# 产生词云
wc.generate(text)
# 保存图片
wc.to_file(r"wordcloud.png") # 按照设置的像素宽高度保存绘制好的词云图,比下面程序显示更清晰

3. 把自己的模块上传到网络

详情请看这篇博客保姆级教程带你开发优质的Python库之上篇【建议收藏】

结语

兴趣是最好的老师,坚持是不变的真理。

学习不要急躁,一步一个脚印,踏踏实实的往前走。

每天进步一点点,日积月累之下,你就会发现自己已经变得很厉害了。

我是布小禅,一枚自学萌新,跟着我每天进步一点点吧!

说了这么多暂时也就够了,那么就告辞吧

你想学的,我这里都有!!

image.png

目录
相关文章
|
19天前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
187 7
|
1月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
174 0
|
23天前
|
JSON 算法 API
Python中的json模块:从基础到进阶的实用指南
本文深入解析Python内置json模块的使用,涵盖序列化与反序列化核心函数、参数配置、中文处理、自定义对象转换及异常处理,并介绍性能优化与第三方库扩展,助你高效实现JSON数据交互。(238字)
210 4
|
20天前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
174 0
|
21天前
|
XML JSON 数据处理
超越JSON:Python结构化数据处理模块全解析
本文深入解析Python中12个核心数据处理模块,涵盖csv、pandas、pickle、shelve、struct、configparser、xml、numpy、array、sqlite3和msgpack,覆盖表格处理、序列化、配置管理、科学计算等六大场景,结合真实案例与决策树,助你高效应对各类数据挑战。(238字)
113 0
|
2月前
|
安全 大数据 程序员
Python operator模块的methodcaller:一行代码搞定对象方法调用的黑科技
`operator.methodcaller`是Python中处理对象方法调用的高效工具,替代冗长Lambda,提升代码可读性与性能。适用于数据过滤、排序、转换等场景,支持参数传递与链式调用,是函数式编程的隐藏利器。
101 4
|
2月前
|
存储 数据库 开发者
Python SQLite模块:轻量级数据库的实战指南
本文深入讲解Python内置sqlite3模块的实战应用,涵盖数据库连接、CRUD操作、事务管理、性能优化及高级特性,结合完整案例,助你快速掌握SQLite在小型项目中的高效使用,是Python开发者必备的轻量级数据库指南。
230 0
|
12月前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
351 62
|
3月前
|
存储 安全 数据处理
Python 内置模块 collections 详解
`collections` 是 Python 内置模块,提供多种高效数据类型,如 `namedtuple`、`deque`、`Counter` 等,帮助开发者优化数据处理流程,提升代码可读性与性能,适用于复杂数据结构管理与高效操作场景。
249 0
|
4月前
|
数据安全/隐私保护 Python
抖音私信脚本app,协议私信群发工具,抖音python私信模块
这个实现包含三个主要模块:抖音私信核心功能类、辅助工具类和主程序入口。核心功能包括登录

推荐镜像

更多