
python
文章平均质量分 71
月司
博闻治学,士行无疆。
展开
-
深入学习从入门到放弃:掌握梯度概念,开始征服深度学习!
想象你在一座被浓雾笼罩的山上,想找到山谷的最低点。但由于能见度低,你无法看到全貌,只能感觉到脚下的坡度。这种坡度感告诉你哪个方向是向下的,哪边更陡峭。这个“坡度”就是梯度的直观表现,它指示了函数在当前点变化最快的方向和速率。原创 2024-10-05 17:04:24 · 1035 阅读 · 0 评论 -
Python 类型提示(Type Hinting)及typing库
从 Python 3.5 开始引入,类型提示允许程序员为变量、函数参数和返回值指定预期的类型。这些提示不会改变 Python 的动态类型本质,但可以帮助 IDE 和类型检查器理解代码。在脚本中进行类型提示,会使得代码比较规范,整体上说,会有以下几点好处: 提高代码可读性,支持IDE的静态类型检查以及日后的代码重构原创 2024-02-22 14:09:37 · 1349 阅读 · 1 评论 -
matplotlib使用案例3:通过自定义图例类实现图例的任意方向(行 or 列)的排列
方法的核心依然是基于`matplotlib.legend._get_legend_handles_labels`函数。然后将得到的handlers, labels进行重排,使得即使再调用`Legend`类的绘制方法对图例进行列排列,最终的效果也是图例的行显示原创 2024-02-22 13:51:52 · 880 阅读 · 0 评论 -
matplotlib图例使用案例1.1:在不同行或列的图例上添加title
我们将图例进行行显示或者列显示后,只能想继续赋予不同行或者列不同的title来进行分类。比较简单的方式,就是通过`ax.annotate`方法添加标签,这样方法复用率比较低,每次使用都要微调`ax.annotate`的显示位置。比较方便的方法是在案例1实现的基础上,添加title显示的功能。原创 2024-02-19 23:06:56 · 577 阅读 · 0 评论 -
motplotlib图例案例1:通过多个legend完全控制图例显示顺序(指定按行排序 or 按列排序)
通过获得图中的handlers和labels,然后对它们进行切分和提取,最后分为几个legend进行显示,实现控制legend对象的显示顺序原创 2024-02-19 22:59:34 · 1276 阅读 · 0 评论 -
loguru模块bind和filter的联合使用案例:将loguru改造为csv数据记录器
在运行程序的过程中,通常需要使用设置日志信息来方便追踪程序运行状态或者是调试,也常常需要进行多次运算并将计算结果进行保存。一般来说,日志信息可以通过logging模块保存,而计算数据的记录常常是基于文本文件的读写功能实现的。如果要统一的实现两个功能,可以通过改造loguru模块进行实现。这个实现主要是基于`filter`机制和`bind`方法原创 2024-02-19 22:51:38 · 1893 阅读 · 0 评论 -
python的logging组件的使用:基于colorama库新建一个控制台彩色日志打印格式类ColorFormater(开箱即用)
logging的打印到控制台的内容是不带格式颜色格式的,python有个`colorama`库,可以快速实现不同级别日志的彩色设置,于是创建了一个`coloredFormatter`新类,只要给handle的formatter制定为新建的类,其余的使用方法与原生的`logging`模块无异。原创 2023-05-02 22:17:07 · 483 阅读 · 3 评论 -
Tensorflow的张量以及常用的张量运算
TensorFlow的运算基本上都是基于张量的。张量是多维array,跟numpy类型,也可以通过方法和tensor进行转换,比如tensor支持`.numpy()`方法转换为numpy array,两者在进行运算时,也会自动转换原创 2023-01-15 09:46:53 · 1120 阅读 · 0 评论 -
Tensorflow的DataSet的使用
Dataset类是TensorFlow非常流行的存储数据的格式。常用来作为输入输出。data模块主要的用途就是通过这种方法创建Dataset。经常将自变量X数据以及target数据以元组的形式包裹,如,创建Dataset。模型的fit()方法可以自动的解包。Dataset能够包括比较灵活的类型,比如。因为数据最外部依然是最外部包裹,所以model的fit()依然可以自动的对x以及target解包。但由于dataset保存component是以原始数据的形式保存的。对于字典内部部分,需要手动的自己解包。原创 2023-01-15 09:39:36 · 1256 阅读 · 0 评论 -
python命令行参数解析:使argparse命令行参数正确识别bool的四种解决办法
python命令行参数解析:使argparse命令行参数正确识别bool的四种解决办法原创 2023-01-05 23:26:39 · 1646 阅读 · 2 评论 -
拿来即用--python判断线段是否相交及求相应交点
【代码】拿来即用--python判断线段是否相交及求相应交点。编写了几个使用的函数,实现了:判断线段是否相交,或其延长线是否相交; 函数内定义了`isinline`方法,能判断所给点是否在给定的直线上。这个方法通过控制`precision`允许给定的点有一定的误差;函数内定义了`isinsegment`方法,能判断所给点是否在给定的直线上。这个方法通过控制`precision`允许给定的点有一定的误差原创 2022-12-22 13:45:23 · 2447 阅读 · 3 评论 -
查找pandas的DataFrame某条记录的行号(行下标)以及在DataFrame中任意位置插入一条或多条记录
DataFrame经常是依靠index来查找对应的记录的。index仅是DataFrame行的标签,默认情况下是从0开始的整数数列。但这个数列可以不连续,可以重复,也可以是其他类型的数据,比如时间类型数据,字符类型数据。有时候我们希望能获得某行数据的在DataFrame中位于第几行,即行下标。行下标之于index的好处在于,这个是唯一的。import pandas as pdimport numpy as npdf = pd.DataFrame({ 'A' : 1.,原创 2022-03-27 00:06:27 · 9082 阅读 · 0 评论 -
pycharm项目配置虚拟环境,但terminal中打开却不是虚拟环境的一劳永逸的解决方法
最近在学习opencv的时候,给项目设置了虚拟环境,但是在terminal中使用`pip`工具时,默认的仍然是本地python安装目录中(`base interpreter`)中的`pip`。这说明terminal根本没有打开虚拟环境,虽然terminal中显示着`venv`的环境名。本人的pycharm版本是`2020.1.2`,不知道是不是版本的问题。原创 2021-05-10 00:45:30 · 15134 阅读 · 31 评论 -
python类初始化__init__()方法中使用[]作为形参的默认值(空列表为默认值初始化类实例属性)导致的问题和分析
在编写一个拓扑计算图的节点类时,更新实例节点的实例属性 `self.inputs`(inputs为list类型)时,发现一个实例的更新,会引起继承该类的所有的inputs均会更新,经过反复的测试后,发现问题出现在`__init__()`中inputs设置了默认值`[]`。这个inputs在init函数中是对`self.inputs`进行初始化操作,从而使得所有的self.inputs都具有同样的地址。故python可变类型数据,如list不可以做类实例或者函数形参的默认值。否则会出错.原创 2021-03-11 00:05:30 · 5293 阅读 · 2 评论 -
一文弄懂numpy/tensorflow/机器学习中维度信息以及shape和reshape方法
维度是做机器学习以及数据分析中中经常用的,是一个基本以及必须要熟悉掌握的知识点,对于初学者来说很有可能疑惑。原因在于现实生活中所说的维一般而言是几何上的概念,如一维是直线(直线上有无数个点),二维是平面(平面有无数条线),三维为体(有无数个面)。而机器学习以及数据分析中的维数是数据空间的一种描述方式原创 2021-01-02 00:34:55 · 988 阅读 · 0 评论 -
一文彻底弄通django项目生产环境配置,并部署到阿里云服务器
关于django项目生产环境的配置,文章有不少。但是详细的介绍其原理和过程的并不多。导致有些细节没有涉及,而走了不少弯路。为了方便后来人,特写了这个总结博文,希望大家都能成功配置原创 2020-11-15 13:30:02 · 2897 阅读 · 0 评论 -
关于python基础的一些编程杂记: (持续更新)
关于python基础的一些编程杂记: (持续更新)原创 2020-11-02 11:04:12 · 47 阅读 · 0 评论 -
matplotlib绘图奇技淫巧--绘图细节总结
有关matplotlib绘图的细节记录原创 2020-09-15 22:58:09 · 272 阅读 · 0 评论 -
matplotlib的ha和va参数解析
matplotlib 轴标签对齐参数va和ha的使用解析原创 2020-09-11 17:43:56 · 9551 阅读 · 0 评论 -
DJANGO get传参获取的方法总结说明
django get参数的获取方法总结原创 2020-09-11 13:53:44 · 4427 阅读 · 0 评论 -
matplotlib常用的的刻度定位器locator总结
在使用matplotlib绘制图时,发现默认生成的刻度的位置总是不令人满意,这时候我们可以使用locator来设定刻度位置。原创 2020-08-01 13:33:09 · 14964 阅读 · 1 评论 -
matplotlib的断轴实现原理和代码详解
关于matplotlib的断轴处理,网上的资料似乎并不那么多,大多数也没有涉及到原理的说明,下面我将说明一下我对断轴的理解和详细的实现代码原创 2020-06-23 00:21:05 · 2763 阅读 · 2 评论 -
导入seaborn的数据集方法load_datasets的问题
导入seaborn自带的一些经典数据集,如iris等,若是直接使用load_dataset方法,经常会发生URLError: <urlopen error [Errno 11004] getaddrinfo failed>。下面提供了这个问题发生的原因和解决方法原创 2020-06-12 23:45:31 · 16281 阅读 · 14 评论 -
matplotlib棉棒图个性化设置
matplotlib可以画棉棒图,但官方以及当前论坛上对其美化的说明不是很清楚,现在我提供一下自己的美化思路原创 2020-03-20 15:40:58 · 2472 阅读 · 1 评论 -
matplotlib中设置轴标题标签的方法
目录问题描述解决方法问题描述当我们在用matplotlib画图的时候,有的时候,我们会发现加上轴标签后,图会变小一点,而轴标题离图的边缘比较远,如上图所示(上图y左轴标签的留白也比较严重)。上图的源码如下:import numpy as npimport matplotlib.pyplot as pltfrom matplotlib import rcrc('mathtext', d...原创 2020-03-19 23:26:38 · 5438 阅读 · 0 评论