- 博客(65)
- 收藏
- 关注
原创 c++的第一个程序-Helloworld
第一个程序 #include<iostream>using namespace std;int main(){ cout<<"Helloworld"<<endl; return 0; }
2020-01-11 17:34:00 190 1
原创 python的并发编程,进程池,线程池,协程
需要注意一下不能无限的开进程,不能无限的开线程最常用的就是开进程池,开线程池。其中回调函数非常重要回调函数其实可以作为一种编程思想,谁好了谁就去掉只要你用并发,就会有锁的问题,但是你不能一直去自己加锁吧那么我们就用QUEUE,这样还解决了自动加锁的问题由Queue延伸出的一个点也非常重要的概念。以后写程序也会用到这个思想。就是生产者与消费者问题一、Python标准模块–concur...
2020-01-08 13:42:49 278
原创 opencv中对图片的二值化操作并提取特定颜色区域
#include<opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #include<opencv2/imgproc/imgproc.hpp> #include <vector>#include<iostream> #include<strin...
2020-01-08 13:32:33 1453
原创 基于opencv的简单的图片截取
import xml.etree.ElementTree as ETimport os, cv2from tqdm import tqdm annota_dir = 'C:\\Users\\Administrator\\Desktop\\1_stage_template\\Annotations'origin_dir = 'C:\\Users\\Administrator\\Deskto...
2020-01-08 13:31:11 335
原创 opencv
#include <opencv2/opencv.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <opencv2/highgui/highgui.hpp>#include <iostream>using namespace cv;using namespace std;...
2019-12-20 13:39:00 77
原创 简单的遍历xml
#include <opencv2\opencv.hpp>#include <opencv2\highgui\highgui.hpp>#include <opencv2\features2d\features2d.hpp>#include <opencv2\core\core.hpp>using namespace std...
2019-12-20 13:37:00 110
原创 基于opencv简单的图片截取
import xml.etree.ElementTree as ETimport os, cv2from tqdm import tqdmannota_dir = 'C:\\Users\\Administrator\\Desktop\\1_stage_template\\Annotations'origin_dir = 'C:\\Users\\Administrator\\D...
2019-12-20 12:04:00 158
原创 opencv练习
//图像的二值化#include <opencv2/opencv.hpp>using namespace std;IplImage *g_pGrayImage = NULL;IplImage *g_pBinaryImage = NULL;const char *pstrWindowsBinaryTitle = "二值图";void on_trackba...
2019-12-20 11:59:00 139
原创 opencv中对图片的二值化操作并提取特定颜色区域
一、最近因为所在的实习公司要求用opencv视觉库来写一个对图片识别并提取指定区域的程序。看了很多资料,只学会了皮毛,下面附上简单的代码。运行程序之前需要安装opencv库,官网地址为:https://opencv.org/。直接下载安装包到本地,解压即可。本人的opencv版本为24.10 。集成环境是visual studio 2013。 1 #include<opencv...
2019-12-01 13:54:00 1394
原创 利用threading模块开线程
一多线程的概念介绍threading模块介绍threading模块和multiprocessing模块在使用层面,有很大的相似性。二、开启多线程的两种方式1.创建线程的开销比创建进程的开销小,因而创建线程的速度快from multiprocessing import Processfrom threading import Threadimport osimport timede...
2019-11-10 20:57:44 250
原创 并发编程之IO模型
了解新知识之前需要知道的一些知识同步(synchronous):一个进程在执行某个任务时,另外一个进程必须等待其执行完毕,才能继续执行1 #所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不会返回。按照这个定义,2 其实绝大多数函数都是同步调用。但是一般而言,我们在说同步、异步的时候,3 特指那些需要其他部件协作或者需要一定时间完成的任务。4 #举...
2019-10-11 08:06:00 101
原创 死锁与递归锁、信号量等
一、死锁现象与递归锁进程也是有死锁的所谓死锁: 是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程,如下就是死锁 1 死锁------------------- 2 from threading import Thread,L...
2019-10-05 15:25:00 138
原创 利用threading模块开线程
一多线程的概念介绍threading模块介绍threading模块和multiprocessing模块在使用层面,有很大的相似性。二、开启多线程的两种方式 1 1.创建线程的开销比创建进程的开销小,因而创建线程的速度快 2 from multiprocessing import Process 3 from threading import Thread ...
2019-10-05 15:20:00 109
原创 数据库之数据类型
首先补充点了解的小知识;select * from mysql.user #显示出来乱了select * from mysql.user\G #加了\G后一行一行显示了一、数据类型:分不同种类去存不同类型的数据存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的1、数字(默认是有符号的)数字又分为: ...
2019-09-20 10:20:00 176
原创 数据库的增删改查操作
注意的几点:1.如果你在cmd中书命令的时候,输入错了就用\c跳出 2.\s查看配置信息一、操作文件夹(库)增:create database db1 charset utf8;删:drop database db1;改:alter database db1 charset gbk;查:show databases; #查看所有的数据库 s...
2019-09-20 10:17:00 180
原创 基本操作和存储引擎
一、知识储备数据库服务器:一台计算机(对内存要求比较高)数据库管理系统:如mysql,是一个软件数据库:oldboy_stu,相当于文件夹表:student,scholl,class_list,相当于一个具体的文件记录:1 susan 158426544 22,相当于文件中的一行内容二、初始SQL语言SQL(Structured Query Langua...
2019-09-20 10:13:00 81
原创 MySQL数据库安装
一、基础部分1.数据库是什么之前所学,数据要永久保存,比如用户注册的用户信息,都是保存于文件中,而文件只能存在于某一台机器上。如果我们不考虑从文件中读取数据的效率问题,并且假设我们的程序所有的组件都运行在一台机器上,那么用文件存取数据,并没有问题但需要考虑的问题是:程序的执行效率依赖于承载它的硬件,而一台机器机器的性能总归是有限的,受限于目前的硬件水平,垂直扩展是有极限的...
2019-09-20 10:12:00 140
原创 飞机大战游戏
一、主函数部分 1 import pygame 2 import sys 3 import traceback 4 from pygame.locals import * 5 import myplane 6 import enemy 7 import bullet 8 import supply 9 import random...
2019-09-13 10:52:00 173
原创 选择排序算法
分享一个选择排序算法 1 import random 2 3 def select_sort(li): 4 for i in range(len(li)): #i是第几趟 5 min_loc = i 6 for j in range(i+1,len(li)): #在无序区找最小值 7 ...
2019-08-29 12:52:00 64
原创 学校管理系统代码未完成版
代码还没完成,遇到了瓶颈,请看的朋友留言给我,给点建议,完善一下 1 import datetime 2 3 class School(object): 4 '''总部学校类''' 5 def __init__(self,name,addr,website): 6 self.name = name 7 ...
2019-08-29 12:48:00 125
原创 反射的例子
1 #没学反射之前 2 3 class User(object): 4 def login(self): 5 print('欢迎来到登录页面...') 6 7 def register(self): 8 print('欢迎来到注册页面...') 9 10 def save(self):...
2019-08-29 12:44:00 63
原创 type动态创建类
在一些特定场合,需要动态创建类,比如创建表单,就会用到type动态创建类,举个例子: 1 class Person(object): 2 3 def __init__(self,name,age): 4 self.name = name 5 self.age = age 6 7 8 p = Person("...
2019-08-29 12:36:00 143 1
原创 repr_str方法
该方法可以改变字符串的显示格式 1 class School: 2 3 def __init__(self,name,addr,type): 4 self.name = name 5 self.addr = addr 6 self.type = type 7 8 #改变字符串的显示格式...
2019-08-28 11:07:00 99
原创 类下的方法
1 class Brand: 2 3 def __init__(self,name): 4 self.name = name 5 6 def __getitem__(self, item): 7 print("获取key",item) 8 print(self.__dict__[item...
2019-08-28 11:05:00 99
原创 python中多线程(1)
一多线程的概念介绍threading模块介绍threading模块和multiprocessing模块在使用层面,有很大的相似性。二、开启多线程的两种方式1.创建线程的开销比创建进程的开销小,因而创建线程的速度快 2 from multiprocessing import Process 3 from threading import Thread 4 imp...
2019-05-28 11:41:00 91
原创 python线程理论
一、什么是线程线程:顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程所以,进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合),而线程才是cpu上的执行单位。 多线程(即多个控制线程)的概念是,在一个进程中存在多个控制线程,多个控制线程共享该进程的地址空间,相当于一个车间内有多条流水线,都共用一个车间的资源。(一个进...
2019-05-28 11:35:00 82
原创 python中进程池和回调函数
一、数据共享1.进程间的通信应该尽量避免共享数据的方式2.进程间的数据是独立的,可以借助队列或管道实现通信,二者都是基于消息传递的。虽然进程间数据独立,但可以用过Manager实现数据共享,事实上Manager的功能远不止于此。1234命令就是一个程序,按回车就会执行(这个只是在windows情况下)taskli...
2019-05-28 11:34:00 186
原创 python网络编程中互斥锁与进程之间的通信
一、互斥锁进程之间数据隔离,但是共享一套文件系统,因而可以通过文件来实现进程直接的通信,但问题是必须自己加锁处理。注意:加锁的目的是为了保证多个进程修改同一块数据时,同一时间只能有一个修改,即串行的修改,没错,速度是慢了,牺牲了速度而保证了数据安全。1.上厕所的小例子:你上厕所的时候肯定得锁门吧,有人来了看见门锁着,就会在外面等着,等你吧门开开出来的时候,下一个人才去上厕所。...
2019-05-28 11:32:00 158
原创 python支持的进程与线程
一、multiprocessing模块介绍python中的多线程无法利用CPU资源,在python中大部分情况使用多进程。python中提供了非常好的多进程包multiprocessing。multiprocessing模块用来开启子进程,并在子进程中执行功能(函数),该模块与多线程模块threading的编程接口类似。multiprocessing的功能众多:支持子进程、...
2019-05-28 11:29:00 71
原创 python网络编程之进程
背景知识顾名思义,进程即一个软件正在进行的过程。进程是对正在运行程序的一个抽象。进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。所以想要真正了解进程,必须先了解操作系统。详见博客点击进入。须知的理论基础:#一 操作系统的作用: 1:隐藏丑陋复杂的硬件接口...
2019-05-28 11:28:00 86
原创 python网络编程之粘包
一、什么是粘包须知:只有TCP有粘包现象,UDP永远不会粘包粘包不一定会发生如果发生了:1.可能是在客户端已经粘了 2.客户端没有粘,可能是在服务端粘了首先需要掌握一个socket收发消息的原理应用程序所看到的数据是一个整体,或说是一个流(stream),一条消息有多少字节对应用程序是不可见的,因此TCP协议是面向流的协议,这也是容易出现粘包问题的原...
2019-05-28 11:27:00 113
原创 python中socket编程
一、网络协议客户端/服务器架构1.硬件C/S架构(打印机)2.软件C/S架构(互联网中处处是C/S架构):B/S架构也是C/S架构的一种,B/S是浏览器/服务器C/S架构与socket的关系:我们用socket就是为了完成C/S架构的开发osi七层引子:须知一个完整的计算机系统是由硬件、操作系统、应用软件三者组成,具备了这三个条件,一台计算机系统就可以自己跟自...
2019-05-28 11:24:00 148
原创 python的异常处理
一、错误与异常程序中难免会出现错误,而错误分为两种1.语法错误:(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)2.逻辑错误:(逻辑错误),比如用户输入的不合适等一系列错误那什么是异常呢? 异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下。异常发生之后,异常之后的代码就不执行了异常种类:在python中不同...
2019-05-27 08:19:00 74
原创 python面向对象之反射和内置方法
一、静态方法(staticmethod)和类方法(classmethod)类方法:有个默认参数cls,并且可以直接用类名去调用,可以与类属性交互(也就是可以使用类属性)静态方法:让类里的方法直接被类调用,就像正常调用函数一样类方法和静态方法的相同点:都可以直接被类调用,不需要实例化类方法和静态方法的不同点: 类方法必须有一个cls参数表示这个类,可以使用类属性 ...
2019-05-27 08:17:00 113
原创 python面向对象的三大特性
一、继承一、组合组合:组合指的是,在一个类中以另外一个类的对象(也就是实例)作为数据属性,称为类的组合 也就是说:一个类的属性是另一个类的对象,就是组合例子: 圆环是由两个圆组成的,圆环的面积就是外圆的面积减去内圆的面积。圆环的周长就是内圆的周长加上外圆的周长,这个时候,我们首先设计一个圆形类,计算一个圆的面积和圆的周长。然后在‘圆环类’组合圆形的实例作为自己的...
2019-05-27 08:01:00 164
原创 初识面向对象
一、面向过程:面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。优点:极大地降低了写成学的复杂度,只需要顺着执行的步骤,堆叠代码即可缺点:一套流水线或者流程就是用来解决一个问题,如果修改代码就都得改变二、面向对象:上帝的思想优点:解决了程序的扩展性。对某一个对象单独修改,会立刻反映...
2019-05-27 07:59:00 86
原创 python包的补充
1.包A和包B下有同名模块也不会冲突,如A.a与B.a来自俩个命名空间2.常见目录结构import os 2 os.makedirs('glance/api') 3 os.makedirs('glance/cmd') 4 os.makedirs('glance/db') 5 l = [] 6 l.append(open('glance/__init__.py'...
2019-05-27 07:57:00 72
原创 python的模块和包
一个py文件就可以作为一个模块模块的导入:直接导入文件的名字,不需要带着后缀模块中的函数调用:模块名.函数名()导入模块的时候做了三件事:1.首先开辟了一个新的命名空间my_moudle 2.执行了my_moudle内的代码 3.将my_moudle里面的名字和命名空间绑定在一起了注意:模块在一个程序中只会被导入一次...
2019-05-27 07:54:00 48
原创 python的包
1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都要第一时间提高警觉:这是关于包才有的导入语法2. 包是目录级的(文件夹级),文件夹是用来组成py文件(包的本质就是一个包含__init__.py文件的目录)3. import导入文件时,产生名称空间中的名字来源于文件,import 包,产生的名称空间的名字同样来源于文件...
2019-05-27 07:54:00 81
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人