
python
文章平均质量分 82
包含python实战及相关学习笔记
叶青古
不要温和地走进那个良夜,老年应当在日暮时燃烧咆哮;怒斥,怒斥光明的消逝。
展开
-
(python)图算法:拓扑排序算法+kruskal算法+prim算法+Dijkstra算法实现
补充图的几个算法:拓扑排序算法 、kruskal算法和prim算法实现。目录一.拓扑排序算法二.kruskal算法三.prim算法一.拓扑排序算法拓扑排序算法适用于无环的、有入度为0的图。再说一下该算法的一个应用场景,在实现工程代码时,各个代码文件之间存在依赖关系,所以需要进行编译顺序排序。此时就可以使用拓扑排序算法实现编译顺序确定。方法:找到入度为0的点,然后记入result,随后擦除该点的影响(点和边),然后继续找到入度为0的点记入result,周而复始。代码:为方便起见,使用了我的上一原创 2021-09-08 15:37:08 · 1121 阅读 · 0 评论 -
(python)数据结构图的描述实现+其他描述方式的转换示例
补充一个python的图数据结构的描述实现,和其他描述方式与这个方式的转换示例。左神教了一种图的通用描述结构,遇到别的情况(比如题目中有别的描述结构)这转换为该种结构然后实现算法。原课程为java实现,我改写为python。图分为无/有权重有向图、无/有权重无向图。目录一.图的描述实现二.转换示例一.图的描述实现实现了图、点、边的描述结构:注意实现中边的结构只需要实现有向边,对于无向边来说等于两个点有向边彼此拼接。例如无向边AB等于A到B的有向边与B到A的有向边拼接。class Graph(ob原创 2021-09-07 17:15:54 · 478 阅读 · 0 评论 -
(python)递归+非递归的二叉树前序、中序、后序遍历实现
补充一下二叉树三种遍历代码实现,同样是纯coding,写熟完事,思路就不赘述。目录一.二叉树构建二.递归1.前序遍历2.中序遍历3.后序遍历三.非递归(栈)1.前序遍历2.中序遍历3.后序遍历一.二叉树构建假设下图是我们的树:构建:class TreeNode(object): def __init__(self,value=None,left=None,right = None): self.value = value self.left = left原创 2021-09-06 15:26:09 · 886 阅读 · 2 评论 -
(python)单双链表反转实现
补充一下单双链表反转代码,因为是纯coding的东西,思路这里就不赘述,写进注释了。要注意的一点是,如果后续链表相关的编码涉及到换头,记得要返回当前的head。目录一.单链表反转二.双链表反转一.单链表反转class Note(object): def __init__(self,value,next=None): self.value = value self.next = next def reverse_note(self,head_): #涉及原创 2021-09-03 15:42:47 · 423 阅读 · 0 评论 -
基于异或运算的无额外空间复杂度的两数交换方法、注意事项及例题
一般写两个数交换的代码可能会引入一个temp作为中转。如下:def swap(a,b): # python可以写成:a,b=b,a temp = a a = b b = temp print(a,b) #output:2 1swap(1,2)但此时由于引入常数级的变量,将造成额外空间复杂度=O(1)下面介绍一种利用异或运算的无额外空间复杂度的交换方式,代码如下:def swap(a,b): # python可以写成:a,b=b,a a =原创 2021-08-31 16:26:45 · 325 阅读 · 0 评论 -
python开发学习笔记(二)——python语言进阶知识总览
想开个学习笔记系列,就是拉一遍python开发知识,希望可以涵盖编程基础、python基础、数据分析、web框架等。本笔记系列由视频跟学目录1.函数及变量(1).传参可变与不可变的区别(2)fun(*args,**kwargs)(3)变量作用域(4)全局变量2.lambda表达式3.内置函数4.类与变量(1)类变量与成员变量(2)类的继承(3)多重继承(4)类中属性和方法的权限(5)魔术方法(6)类属性描述符(属性描述器)5.装饰器(1)装饰器四种应用场景应用示例A.函数装饰器装饰函数B.函数装饰器装饰类原创 2021-08-29 15:26:38 · 895 阅读 · 1 评论 -
python开发学习笔记(一)——python语言基础语法总览
想开个学习笔记系列,就是拉一遍python开发知识,希望可以涵盖编程基础、python基础、数据分析、web框架等。本笔记系列由视频跟学目录1.python四则运算2.浮点数 float3.字符串运算4.python中的进制5.python注释6.运算符7.Number类型及数值运算内置函数、math库8.bool类型9.string类型、格式化字符串、用户输入、string模块10.列表list、list内建函数11.元组及内建函数12.字典及内建函数13.条件语句、循环语句、断言14.迭代器、生成器原创 2021-08-27 17:28:34 · 689 阅读 · 0 评论 -
pytorch教程(学习笔记)——tensor操作+模型实例(线性回归、LR、MLP)
突然翻出了蛮早之前做的pytorch学习笔记,整理了一下决定发成博客以供复习,当时根据视频资料和网页资料整理的,视频资料现在找不到了,后面找到了再进行补充;网上的博客资料标在文中对应位置。目录一.pytorch安装二.pytorch基础1.pytorch张量与数据类型2.张量基本操作(1).构建张量(2).size()、shape(3).adarray与tensor之间转换2.张量运算与形状变换(1)张量运算——乘法(2)张量运算——加法(3)张量运算——均值、求和、tensor转标量、in-place函原创 2021-08-22 23:51:09 · 806 阅读 · 0 评论 -
(python+numpy+opencv)向量保存与特征矩阵间两两余弦相似度计算
目录1.问题描述2.解决方案3.具体步骤(1)图片库中图片转为n维向量并保存到文件(2)特征矩阵间两两(k * n),(1 * n/m * n)余弦相似度计算1.问题描述工作中遇到一个问题,需要将一个待测图片与大量的图片库进行相似度计算,以求出最相近的类别。2.解决方案在解决方案中涉及到numpy向量的保存和图片预想相似度的计算:先将图片库中所有图片的向量保存为一个n维向量,再保存入文件中,每次匹配读取该向量值,与待测图片向量做相似度运算,并直接获取最值。3.具体步骤(1)图片库中图片转为n维原创 2021-08-03 00:12:43 · 1768 阅读 · 1 评论 -
python编程Tips记录(自用|持续更新)
记录工作中用到的python编程小知识。目录1.牛客网获取输入输出2.颠倒字符串3.迭代与递归4.进制5.str.join() 参数仅一个,是一个序列6.strip lstrip rstrip sys.stdin与input()7.print("\t",end=' ');8.有序字典9.大写小写/输出字母后的第5个字母/字符转ascii/ascii转字符10.enumerate(a)11.lambda12.是否是数字 字母13.列表合并14 列表去重不乱序15 一些lambda+排序,灵活且可自定义16原创 2021-07-23 15:30:08 · 263 阅读 · 0 评论 -
windows下ffmpeg+nginx-rtmp环境搭建及opencv+ffmpeg+python实现拉流和rtmp直播推流
由于工作需要最近在研究rtsp拉流与直播推流的问题,目前先在我本机上进行了实验,本博客记录学习的内容,包含windows下ffmpeg、nginx-rtmp环境搭建及opencv+ffmpeg+python进行拉流、直播推流的实施代码,还有一些遇见的问题的处理。目录一.nginx-rtmp服务器搭建及ffmpeg、VLC下载安装1.ffmpeg下载安装2.nginx-rtmp环境搭建3.本博客还涉及到使用VLC Media Player4.总结一下实际操作中常用的几个命令:二.opencv+ffmpeg+原创 2021-06-21 16:20:47 · 2567 阅读 · 4 评论 -
Kaggle入门——Titanic+随机森林(调参)+逻辑回归
本博客记录一下自己的Kaggle入门题目——Titanic。只弄了一天,特征工程做得比较草率,结果只有0.76+,不过主要是为了体验一下Kaggle竞赛的流程,以及熟悉一下Kaggle的使用。目录1.题目相关2.特征工程3.随机森林+调参4.逻辑回归5.其他模型1.题目相关原题地址:https://www.kaggle.com/c/titanic/overview数据:https://www.kaggle.com/c/titanic/data,数据的介绍页面上已经十分详尽,本博客就不赘述。原题数据原创 2021-06-16 17:02:08 · 869 阅读 · 1 评论 -
python-error记录(自用|持续更新)
目录1.ImportError: libSM.so.6: cannot open shared object file: No such file or directory此博客用于记录日常python编程或使用linux系统遇到的部分error1.ImportError: libSM.so.6: cannot open shared object file: No such file or directory报错情况:(这个问题可以算是opencv踩坑)项目在导入cv2时出错提示:File "&l原创 2021-06-07 19:52:24 · 890 阅读 · 2 评论 -
记一次目标分类任务流程拉通——pytorch+resnet50+重新筛选的部分challenge2018农作物病害数据集(玉米)
做这个事情是为了拉通流程,所以对数据集进行了重新制作,只选取了部分类别来完成目标分类任务。代码地址:完整数据集:https://pan.baidu.com/wap/init?surl=6f1nQchS-zBtzSWn9Guyyg 密码:iksk重新制作后的:一.项目环境python3.6 torch1.6 torchvision==0.7.0二.数据集介绍首先说下数据集:AI Challenger 2018农作物病害检测竞赛就是由上海新客科技为竞赛提供农作物叶子图像的数据集:标注图片5万张原创 2021-06-03 16:54:01 · 1975 阅读 · 3 评论 -
深度学习error记录(自用|持续更新)
目录1.RuntimeError: Could not run 'torchvision::nms' with arguments from the 'CUDA' backend.1.RuntimeError: Could not run ‘torchvision::nms’ with arguments from the ‘CUDA’ backend.Traceback (most recent call last): File "/opt/yyl/yolov5/train.py", line原创 2021-05-20 17:28:35 · 1557 阅读 · 0 评论 -
(keras+VGG16+linux)迁移学习初识——猫狗大战数据集训练预测
目录一.数据集二.工程环境三.工程结构(1)数据集预处理 data_pre.py代码学习笔记数据集文件名-label(2)训练代码 training.py代码学习笔记applications.VGG16中include_top参数迁移训练策略sigmoid\softmax和binary_crossentropy\categorical_crossentropy\sparse_categorical_crossentropy数据预处理器ImageDataGenerator 类数据生成器flow_from_di原创 2021-04-16 14:43:05 · 860 阅读 · 8 评论 -
anaconda虚拟环境操作+python生成及使用requirement.txt
目录一.anaconda创建、删除、激活、退出、查看虚拟环境二.生成、使用项目requirement.txt一.anaconda创建、删除、激活、退出、查看虚拟环境1.创建使用命令:conda create -n your_env_name python=3.5(your_env_name为你虚拟环境名称)2.删除使用命令:conda remove -n your_env_name --all3.激活使用命令:Linux: source activate your_env_na原创 2021-04-15 14:54:42 · 3197 阅读 · 0 评论 -
十大经典排序算法的python实现
目录一 排序算法分类及时间复杂度二 算法讲解及python代码实现1.冒泡排序 Bubble Sort2.选择排序 Selection Sort3.插入排序 Insertion Sort4.快速排序 Quick Sort5.希尔排序 Shell Sort6.归并排序 Merge Sort7.堆排序 Heap Sort8.计数排序 Counting Sort9.桶排序 Bucket Sort10.基数排序 Radix Sort贴一篇讲解贴,包含排序算法的动态展示图和算法讲解,本文将从该博客摘录重点并进行部分原创 2021-04-12 14:19:54 · 483 阅读 · 0 评论 -
Python——单元测试框架unittest
目录一. unittest及其五个概念二. test case1. 测试用例初识2. skip跳过某个case三. setUp(),tearDown(),setUpClass(),tearDownClass()1. setUp(),tearDown()2. setUpClass(),tearDownClass()四. test suite构建五. 测试结果输出一. unittest及其五个概念一. unittest及其五个概念unittest是python内置的单元测试框架,具备编写用例、组织用例、执原创 2021-04-06 23:58:07 · 736 阅读 · 0 评论 -
Django+postman——postman发送raw请求时django接口request.POST获取数据为空
目录1.报错信息2.解决办法3.总结django.utils.datastructures.MultiValueDictKeyError1.报错信息使用request.POST[‘a’]获取数据时报错django.utils.datastructures.MultiValueDictKeyError: 'a'postman发送请求时接收数据失败postman配置及结果如下:视图逻辑如下:@csrf_exemptdef add(request): print(request.POS原创 2021-03-25 11:51:34 · 3622 阅读 · 1 评论 -
Django练习——基于Mysql的登录注册功能界面(django模型、模板、表单简单应用)
目录1.创建2.配置Mysql(1)连接数据库驱动(2)安装数据库驱动(3)创建表格(4)创建迁移文件并同步到数据库3.admin后台(1)创建超级用户(2)注册模型login_msg4.路由与视图4.1先搭框架4.2编写视图处理函数5.运行结果练习完成一个有登录注册功能的Django项目,本文记录练习过程、相关知识点。1.创建新建项目:Django_login,新建app:mine_login,并注册app创建详见Djongo学习笔记——pycharm创建Django服务、app及相关知识点2原创 2021-03-24 14:18:43 · 3598 阅读 · 3 评论 -
Django学习笔记——模型,数据库(一)
Django的模型是数据库相关内容,相关代码写在models.py中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在settings.py中配置即可,不用更改models.py中的代码1.首先创建项目、app,将app添加到settings文件中INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes',原创 2021-03-23 00:23:25 · 138 阅读 · 0 评论 -
Django学习笔记——模型,数据库(二)——QuerySet API
目录1.修改models.py2.创建数据库描述文件,并生成对应表格3.QuerySet API学习(1)新增数据(2)查询(3)筛选与排除 filter&exclude(4)删除(5)更新(6)检查是否有元素存在 exists()(7)排序 order_by()(8)对于QuerySet 不支持负索引的问题(9)表格合并 |(10)去重 distinct()(11)查看程序执行的Sql语句 query(12)以元组(values_list)、字典(values)形式获取查询结果本文为博主跟学及相原创 2021-03-23 00:19:46 · 277 阅读 · 0 评论 -
Django Error——Requested setting INSTALLED_APPS, but settings are not configured.
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.一.报错信息博主创建了数据表后原创 2021-03-22 23:59:57 · 3743 阅读 · 0 评论 -
Djongo学习笔记——pycharm创建Django服务、app及相关知识点
目录1.Pycharm创建Django项目(1)创建(2)URL及视图设置2.创建一个app3.知识点(1)path()函数(2)url 和 path和re_path的区别(3)setting.py文件解读1.Pycharm创建Django项目(1)创建File-New Project-Django创建,如图配置好合适的环境即可,创建后自动创建如下文件,其作用如下manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。init.py: 一个空文件,告诉原创 2021-03-21 23:36:14 · 591 阅读 · 1 评论 -
python学习笔记——装饰器及functools.wraps
装饰器及functools.wraps学习装饰器及functools.wraps学习装饰器wraps装饰器及functools.wraps学习装饰器装饰器的作用,就是封装一个函数,然后修改它,也就是在不改变原有功能代码的基础上,添加额外的功能。在python中所有的东西都是对象,函数可以作为参数进行传递。下面是模拟装饰器功能的一段代码:def my_decorator(func): def decorator(): print('hello') func()原创 2021-03-21 23:00:23 · 464 阅读 · 1 评论