Python精修
python 知识分享
我有明珠一颗
一条通往业界大神的成功之路
展开
-
教你如何将 .rmvb 转换为 .mp4 格式
将 .rmvb 转换为 .mp4 格式,cmd命令:ffmpeg -i 你的原视频名称.rmvb 你要输出的视频名称.mp4。原创 2024-07-21 14:13:06 · 431 阅读 · 0 评论 -
AttributeError: module ‘numpy’ has no attribute ‘int’
2、报错:AttributeError: module 'numpy' has no attribute 'float'1、报错:AttributeError: module 'numpy' has no attribute 'int'解决办法:把np.float替换为float或者np.float64/np.float32 即可。原创 2024-07-15 16:33:47 · 275 阅读 · 0 评论 -
python的日志代码模板(可直接使用)
一般在写完代码的时候,除了在控制台打印日志以外,还会想要生成一个log日志文件用于备份,那么直接加上以下这段代码即可,日志文件命名中包含精确的时间信息,因此同一时间段多次运行同一段代码也不会出现日志覆盖的问题。如果没有logs文件夹的话会自动生成,不必考虑任何报错问题。原创 2024-07-14 13:34:03 · 306 阅读 · 0 评论 -
Pycharm 导入 conda 环境
Pycharm 导入 conda 环境原创 2024-07-14 12:56:16 · 423 阅读 · 0 评论 -
python实现pdf转svg(代码直接可用)
通过使用 Spire.PDF 库来将 pdf 格式的内容转换为 svg 矢量图片的格式原创 2024-07-13 11:32:55 · 203 阅读 · 0 评论 -
Flask 运行 flask db upgrade 报错
这里有个前提,我在使用 flask 操作数据库的时候直接在 mysql 的样例数据库里面操作的,里面除了我要操作的几个表以外,还有一些其他的样例表,flask db upgrade 命令没有权限删除那些样例表就报错了。后来我建了一个新的数据库,重新进行操作就不报错了。原创 2024-07-13 11:24:19 · 169 阅读 · 0 评论 -
Python 中的 *args 和 **kwargs 原理与用法介绍(实例可直接运行)
*args在Python中是用来处理在函数定义时不确定数量的位置参数。它允许函数接收任意数量的参数,这些参数被存储在一个元组中。此处介绍一些简单实例来帮助初学者快速了解这个知识点。原创 2024-07-12 13:52:35 · 855 阅读 · 0 评论 -
Python 随机生成4位验证码(数字+大小写字母)
用python实现随机生成四位验证码的功能,验证码中可包括数字和大小写字母。原创 2024-07-11 12:41:54 · 349 阅读 · 0 评论 -
Flask 运行 flask db init 报错: No such command ‘db’
flask 运行 flask db init 报错: No such command 'db'。先要检查检查一系列安装问题,其次是检查主文件是否名为app.py ,如果主文件改名了,可能会导致该报错。原创 2024-07-11 12:39:38 · 167 阅读 · 0 评论 -
Flask 用 Redis 缓存键值对-实例
Flask 使用起 Redis 来简直就是手到擒来,比 MySQL 简单多了,不需要那么多配置,实际代码就这么多,直接复制就能用。除了提供实例以外,本文后面还会简单介绍一下 Redis 的安装与使用,初学者也能一看就会,分分钟就能上手!原创 2024-07-10 10:31:29 · 1165 阅读 · 1 评论 -
Python 给存入 Redis 的键值对设置过期时间
Redis 是一种内存中的数据存储系统,与许多传统数据库相比,它具有一些优势,其中之一就是可以设置数据的过期时间。通过 Redis 的过期时间设置,可以为存储在 Redis 中的数据设置一个特定的生存时间。一旦数据到达过期时间,Redis 将自动删除该数据,释放内存资源。这对于缓存数据、临时会话数据或具有时效性的数据非常有用。这里提供 Redis 的两种设置过期时间的方法,下面这个小示例可直接复制运行。原创 2024-07-10 10:29:35 · 427 阅读 · 0 评论 -
Flask 邮件发送实例(代码直接可用)
MAIL_DEBUG:支持自定义调试,默认是Flask应用程序的调试状态;MAIL_SERVER: 电子邮件服务器的ip地址;MAIL_PORT: 电子邮件服务器端口;(默认不加密为25)MAIL_DEFAULT_SENDER:设置默认发件人;MAIL_MAX_EMAILS:设置要发送的最大邮件;MAIL_SUPPRESS_SEND: 如果app.testing设置为true,则发送被抑制;MAIL_ASCII_ATTACHMENTS: 如果设置为true,则将附加的文件名转换为ASCII原创 2024-07-09 15:50:25 · 631 阅读 · 0 评论 -
sklearn.svm.SVC 支持向量机-简介
sklearn.svm.SVC 是 Scikit-learn(一个常用的机器学习库)中的一个类,用于支持向量机(Support Vector Machine,SVM)算法中的分类任务。SVM 是一种用于分类和回归的监督学习算法。在分类任务中,SVM 构建一个决策边界,将不同类别的样本分开。SVC 类则实现了标准的支持向量机分类器。原创 2024-01-22 16:55:41 · 883 阅读 · 2 评论 -
RuntimeError:An attempt has been made to start a new process before the current process has finished
RuntimeError:An attempt has been made to start a new process before the current process has finished its bootstrapping phase. This probably means that you are not using fork to start your child processes and you have forgo原创 2024-01-11 18:09:35 · 442 阅读 · 0 评论 -
ERROR: Could not build wheels for pyaudio which use PEP 517 and cannot be installed directly
ERROR: Could not build wheels for pyaudio which use PEP 517 and cannot be installed directly原创 2024-01-06 16:39:08 · 672 阅读 · 0 评论 -
torch.solve已弃用,如何改为torch.linalg.solve?
1、torch.solve 函数的期望输入有2个:右侧向量、系数矩阵;而 torch.linalg.solve 函数的期望输入也有2个:系数矩阵、右侧向量(顺序与torch.solve的输入相反)。2、torch.solve和torch.linalg.solve在返回值上也有所不同。torch.solve函数返回一个元组(solution, LU),其中solution是解向量,LU是矩阵A的 LU 分解。LU 分解是一种将矩阵分解为下三角矩阵L和上三角矩阵U的方法。原创 2024-01-06 14:37:31 · 1685 阅读 · 0 评论 -
将ipynb文件转为py的简单方法(图文并茂)
打开可以使用jupyter命令的命令窗口(如果没有jupyter则需要先安装jupyter),cd 命令进入到 ipynb 文件所在的文件夹,执行jupyter nbconvert --to script xxx.ipynb 即可完成 ipynb 文件到 py 文件的转化,执行jupyter nbconvert --to script *.ipynb 则可以实现将当前文件夹下(不包括子文件夹下)的所有ipynb 文件到 py 文件。原创 2023-12-25 11:38:15 · 2697 阅读 · 0 评论 -
TypeError: No loop matching the specified signature and casting was found for ufunc logical_or 解决办法
TypeError: No loop matching the specified signature and casting was found for ufunc logical_or 解决办法原创 2023-12-22 18:26:59 · 1824 阅读 · 0 评论 -
Python 中的 tqdm() 方法
tqdm是Python中一个用于在循环中显示进度条的库。它提供了一种简单而又灵活的方式来监测代码执行的进度,特别是在处理大量数据或耗时较长的任务时非常有用。使用tqdm的优点是它提供了一个简洁而美观的进度条,同时还可以根据需要自定义进度条的样式和显示信息。tqdm库提供了许多参数,用于自定义和调整进度条的外观、格式和行为。原创 2023-11-15 15:30:00 · 839 阅读 · 0 评论 -
Java中Deque栈对象的增删查(所有方法详解)
栈顶添加:push、offFirst栈尾添加:add、offer、offerLast栈顶删除:remove、pop、poll、pollFirst栈尾删除:pollLast栈顶查看:peek、peekFirst栈尾查看:peekLast原创 2023-11-03 10:31:41 · 516 阅读 · 0 评论 -
element-wise product:两个矩阵对应位置元素进行乘积
element-wise product = element-wise multiplication = Hadamard product含义:两个矩阵对应位置元素进行乘积原创 2023-04-26 13:30:53 · 2355 阅读 · 0 评论 -
算法题:99.恢复二叉搜索树
由二叉搜索树的定义可推知:二叉搜索树的中序遍历结果一定是严格由小到大排序的。由于“恢复二叉搜索树”的题目中指出“恰好两个节点的值被错误地交换”,那么我们只要找出破坏了这个顺序的两个节点,交换其节点值就可以了。本题最优解法是采用 Morris 中序遍历方法,也就是题目进阶要求里的使用O(1)空间的解决方案。原创 2023-11-02 18:07:06 · 177 阅读 · 0 评论 -
Python将字符串数组元素全部变成大写(3种方法)
Python将字符串数组元素全部变成大写的三种方法:1、循环法;2、列表推导法;3、map() 方法。原创 2023-11-01 20:42:49 · 2614 阅读 · 0 评论 -
算法题:102.二叉树的层序遍历
层序遍历,看似简单,实则陷阱很多,怪不得该题目被认定为中等难度题。此处运用了迭代求解法。原创 2023-11-01 12:40:52 · 85 阅读 · 0 评论 -
算法题:最大出牌数量(某厂2023笔试题)
手里给一副手牌,数字从0-9,有r(红色),g(绿色),b(蓝色),y(黄色)四种颜色,出牌规则为每次打出的牌必须跟上一张的数字或者颜色相同,否则不能连续出牌。例如,手中有红色3,那么下次出牌可以出任意花色的3,或任意数字的红色牌,直至手中所有牌与上次出牌花色和数字都不匹配为止。求可打出牌的最大数量。原创 2023-10-24 18:00:45 · 229 阅读 · 0 评论 -
算法:94.实现中序遍历(3种方法:递归、迭代、Morris)Python & Java
中序遍历:左 -> 中-> 右,递归法,迭代法和Morris遍历法原创 2023-10-24 17:47:59 · 733 阅读 · 0 评论 -
Python 中单下划线与双下划线的作用(简洁速记版)
Python 中单下划线与双下划线的作用原创 2023-10-23 14:50:57 · 253 阅读 · 0 评论 -
Python3 刷题必备小技巧 - 持续更新中
Python3 刷题必备小技巧原创 2023-10-23 14:49:24 · 65 阅读 · 0 评论 -
有哪些设计模式,作用是什么?
设计模式是软件开发中常用的解决问题的经验总结,它们提供了一套通用的解决方案和设计原则,用于解决特定的软件设计问题。设计模式可以提高代码的可重用性、可维护性和可扩展性,并促进了代码的可读性和灵活性。原创 2023-10-13 17:08:27 · 472 阅读 · 0 评论 -
双线性内插法&最近邻内插法-python(详细)
在网上找了一圈,没有找到完整且正确的python代码,所以在这里发出来理论可以直接看一下百度百科:双线性插值公式很简单,画一下图就知道怎么回事了,简单说就是根据相邻点的远近乘以对应的权重,离得越远权重越小,离得越近权重越大重点就是一个公式:f(x,y) = f(0,0)*(1-a)*(1-b) +f(0,1)*(1-a)*b + f(1,0)*a*(1-b) + f(1,1)*a*b这里要特别说明的是,在边缘处理上,我也采用了类似的方法:在底部边缘采用:f(x,y) = f(0,0.原创 2021-03-24 23:41:58 · 2180 阅读 · 0 评论 -
opencv3并排显示图片
先缩小图片,如果图片本身比较小,则不需要缩小;然后用np.hstack函数横向合并img1 = cv2.resize(img1, (512, 512))img2 = cv2.resize(img2, (512, 512))img3 = cv2.resize(img3, (512, 512))imgs = np.hstack([img1, img2, img3])cv2.imshow('imgs', imgs)...原创 2021-02-09 09:58:47 · 1004 阅读 · 0 评论 -
Python 何时传的是值,何时传的是引用?
当传递不可变对象时(如数字、字符串、元组等),Python 采用的是传值的方式,即创建了对象的副本,并将副本传递给函数或赋值给其他变量。这意味着在函数内部修改参数的值不会影响到原始对象。然而,当传递可变对象时(如列表、字典、集合等),Python 采用的是传引用的方式,即传递的是对象的引用(内存地址),而不是对象的副本。这意味着在函数内部对参数对象的修改会影响到原始对象。原创 2023-10-11 16:32:29 · 176 阅读 · 0 评论 -
Python 中字典和列表删除元素方法
一、字典(dict)删除元素的方法1、使用del关键字:通过指定要删除的键来删除字典中的元素。2、pop() 方法:该方法会返回并删除指定键的元素。可以选择是否提供默认值,以防指定的键不存在。3、使用popitem()方法:该方法会删除并返回字典中的一个键值对,通常是最后一个插入的键值对。原创 2023-10-11 16:24:11 · 1490 阅读 · 0 评论 -
Python 的内置方法
Python 中的类提供了一些内置方法(也称为魔术方法或特殊方法),它们以双下划线开头和结尾,用于实现特定的行为和功能。这些内置方法可以被重写,以定制类的行为,使其适应特定的需求。通过重写这些内置方法,我们可以自定义类的行为,使其具有更多的灵活性和定制性。这些内置方法提供了类与其他 Python 内置类型的一致性,使我们能够以一种统一的方式与对象进行交互。原创 2023-10-11 16:07:22 · 197 阅读 · 0 评论 -
Python 内置方法__new__()、__init__() 和 __call__()有什么区别?
__new__()方法负责创建并返回类的实例对象,可以在实例化之前对实例进行修改或验证。__init__()方法负责对实例对象进行初始化,设置实例的属性或执行其他必要的初始化操作。__call__()方法使一个对象可以像函数一样被调用,定义了对象被调用时的行为。原创 2023-10-11 15:56:26 · 137 阅读 · 0 评论 -
什么是线程池?
线程池(Thread Pool)是一种线程管理机制,它维护了一组可重用的线程,用于执行多个任务。线程池在应用程序启动时创建一定数量的线程,并将它们放入池中,随后可以从池中获取线程来执行任务,执行完成后线程会返回池中等待下一个任务。线程池的主要目的是提高线程的利用率和性能,避免频繁地创建和销毁线程,从而减少系统开销。通过重用线程,可以避免创建线程的开销,减少线程上下文切换的开销,并控制并发执行的线程数量,以防止系统资源耗尽。原创 2023-10-11 14:25:36 · 84 阅读 · 0 评论 -
Python 中的 set 集合类型是可迭代的吗?
set 是不可以通过下标来访问的。因为集合本身是无序的,不可以为集合创建索引或执行切片(slice)操作。set 是可迭代的。原创 2023-10-11 10:45:54 · 218 阅读 · 0 评论 -
Python中协程异步IO(asyncio)理解与入门
协程的意义:同一时间只有一个任务在跑,它只是想办法充分利用中间的等待时间。 协程对象只有变成了 task 才能被执行,而 await 和 gather 都是隐式地将协程对象变成了 task。原创 2023-10-10 19:23:43 · 132 阅读 · 0 评论 -
Python 的数据类型有哪些?(融合面试基础知识)本篇博文持续更新中
1、简单类型:int、float、str、bool、空值None、复数complex。2、容器类型:列表list、元祖tuple、字典dict、集合set。3、类类型。原创 2023-10-10 18:27:59 · 194 阅读 · 0 评论 -
Web知识:markupsafe.escape() 函数的作用
markupsafe.escape()函数是 MarkupSafe 库中的一个函数,它的作用是对字符串进行 HTML 转义,以防止在 HTML 文档中引起意外的解析结果或安全漏洞。总之,markupsafe.escape()函数可以保护你的应用程序免受跨站脚本攻击(XSS)等安全威胁,它是一种常见的安全措施之一,在使用用户提供的数据渲染 HTML 时应该考虑使用。原创 2023-10-10 13:11:23 · 274 阅读 · 0 评论