自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

忧郁沙的博客

个人随笔\学习心得笔记

  • 博客(91)
  • 资源 (10)
  • 收藏
  • 关注

原创 03 发送消息自定义消息模态对话框

03 windows编程3 发送消息 自定义消息 模态对话框课程内容发送消息自定义消息模态对话框课程详情发送消息方法一:SendMessage函数原型:LRESULT WINAPI SendMessage( _In_ HWND hWnd, _In_ UINT Msg, _In_ WPARAM wParam, _In_ LPARAM lParam);参数说明:参数名参数类型参数说明hWndHWND窗口句柄,指明要发送的消息进入哪个

2022-04-25 21:28:49 588 1

原创 C++ win32编程 02 常见消息

02 常见消息1 打印消息相关信息1.1 将消息内容转化为字符串第一步: 定义字符串变量,用来保存转化后的消息wchar_t szInfo[300]; //定义消息内容变量第二步:用宽字符格式化函数转化消息内容\wsprintf(szInfo, "hWnd=%d\tuMsg=%d\twParam=%d, lParam=%d", hWnd, uMsg, wParam, lParam);这里说明一下,为什么四个参数都可以直接以16进制形式进行格式化

2022-04-23 18:10:29 1998

原创 Windows编程第一课:纯手工创建一个窗体

第一节 创建应用程序主窗体1 创建消息处理函数LRESULT CALLBACK fWinProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ switch (uMsg){ case WM_CLOSE: //处理关闭按钮消息 DestroyWindow(hWnd); //销毁窗口 break; case WM_DESTROY: PostQuitMessage(0); //发送退出消息 break; } //将不处理的

2022-04-21 16:05:34 1086

原创 LeetCode(4)求两个数列的中位数

LeetCode(4)求两个数列的中位数问题给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的中位数。进阶:你能设计一个时间复杂度为 O(log (m+n)) 的算法解决此问题吗?提示:nums1.length == mnums2.length == n0 <= m <= 10000 <= n <= 10001 <= m + n <= 2000-106 <= nums1[i], nums

2021-02-08 23:26:38 376 2

原创 LeetCode题解(3)最长子串长度

LeetCode题解(3)最长子串长度题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是

2021-02-07 22:02:13 692

原创 LeetCode题解(2)两数相加

LeetCode题解(2)两数相加问题给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。问题分析因为列表的第一

2021-02-06 21:12:05 203 1

原创 python 算法(8) 两数和问题

python 算法(8) 两数和问题问题问题来自leecode:问题描述:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:

2021-02-05 23:31:33 248 1

原创 python算法(七)堆排序

python算法(六)堆排序堆如上图, 一个堆应该满足所有的子节点都 不大于(不小于)父节点.当子节点不大于父节点的时候,称为大顶堆当子节点不小于父节点的时候,称为小顶堆堆是一个概念上的名词,在实际的程序中,堆是以列表的形式存在的.因此,如上的堆对应的列表是60 40 32 20 35 45 20 15 10 5 21 25 42 43堆排序图示1.首先要将乱序的列表,排列成堆原始列表: 2 4 8 3 6 1排列成堆状图:4 < 6调整成2

2021-02-04 22:46:39 115

原创 python算法(六)希尔排序

python算法(六)希尔排序希称排序问题: 将一组乱序的数列,按从小到大(从大到小)的顺序重新排列.方法:设定一个初始增量, 对原始数列进行分组:对每一个分组进行排序设置一个更小的增量对第一轮排序后的数列再按增量重新分组对每一个分组进行排序以此,直到增量为1, 再排序结果为我们想要的结果对分组进行排序用的是插入排序算法.因此,希尔排序是插入排序的一种优化的算法图示代码实现# coding: utf-8# 作者:爱编程的章老师# 创建:2021/2/3 8:07 下午

2021-02-03 22:20:47 109

原创 python算法(五)归并排序

python算法(五)归并排序归并排序问题:将一组乱序排列的数列,按从小到大(从大到小)的顺序重新排序.解决问题的逻辑:归并排序的逻辑是:代码实现from random import shuffle"""归并排序"""# 将一列无序的数按从小到大的顺序进行排列def merge_sort(num_lsit1:list,num_list2:list): i = j = 0 result = [] while 1: # 如果第一个列表的元素全部加入结果

2021-02-02 21:09:30 143

原创 python算法(四)快速排序

python算法(四)快速排序快速排序目标: 将一组乱序的数列,按从小到大(从大到小)的顺序排列.方法:快速排序的逻辑是:先从这一组数中,随便找一个数作为基准然后对其他的数进行分类,大于基准的分成一组,小于基准的分成一组.然后对分好的两组重新按上面的方法进行分组,直到每一个组只有一个元素,则排序完成示意图:例题数组: 1 5 7 3 2 8 6 9比如,我用7作为基准1<7 加入左侧, 5<7加入左侧, 3<7加入左侧,2<7加入左侧,8<7

2021-02-01 20:08:49 584

原创 python算法(三) 插入排序

python算法(3) 插入排序算法分析给出一个乱序的数列,将这个数列按从小大到(从大到小)重新排列插入排序的的逻辑是从选这个数列,一个一个的插入一到一个新的数列中如下:初始数列: 5 1 3 7 9 6 4 2第一个数插入空的数列5第二个数 1 < 5插入5所在的位置新的数列变成:1 5第三个数33>1 往后找3 < 5 插入当前位置 , 新的数列变成1 3 5第四个数77>1 往后7>3往后7>5往后因为5是最后一个数了,所以插

2021-01-31 19:34:28 289

原创 Pygame 遮罩

Pygame 遮罩用途解决不规则图形碰撞示例反例:用矩形对象来检测两个圆的碰撞# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/28 8:48 下午 # 邮箱:[email protected]# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygamefrom sys import exitWIDTH = 800HEIGHT = 800pygame.init()sc

2021-01-30 19:20:20 542

原创 python算法(二):选择排序

python 算法(二):选择排序算法分析仍然是排序算法,并且与冒泡排序堪称双生兄弟.逻辑基本一样,唯一不同的时,冒泡排序实行,见一个爱一个的渣男逻辑,而选择排序是一个谋定后而动的狠角.示例:3 2 5 7 1 4 6按从小到大排序从第一个数开始3 记录索引 03 > 2,记录索引 12 < 5 不操作2 < 7 不操作2 >1 记录索引 41 <4 不操作1<6 不操作最终索引记录为4交换第一个数与第五个(索引是4)的两

2021-01-30 18:01:27 157

原创 python 算法(一)冒泡排序

python 算法(一)冒泡排序前言python中有很多功能都直接解决了算法中的一些常见总是.比如对一个列表进行排序,或者对换两个变量对换值等等.不过,今天我们尽量用基本的数据类型来解决这些问题.用的是python语言的基本功能.先出个python版的,以后有时间了,再补上c++版的冒泡排序问题有一个有序数列:5, 1, 9, 7我们希望按照从小到大的顺序来排,变成1, 5, 7,9思路分析冒泡排序的思路是这样的:先从第一个元素开始,往后进行比较,只要找到的数比第一个数小,就交换位置,

2021-01-29 22:04:47 179

原创 pygame Sprite类(4)

pygame Sprite类(4)开箱即用的打砖块游戏精灵类Demo版# Pygame Sprite(4)# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/27 2:53 下午 # 邮箱:[email protected]# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点from random import randintimport pygamefrom pygame.sprite import S

2021-01-27 22:15:45 362

原创 pygame Sprited类3

pygame Sprited类3Group# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/26 8:46 下午 # 邮箱:[email protected]# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygameimport sysclass Ball(pygame.sprite.Sprite): def __init__(self, screen, radius,

2021-01-26 21:34:14 230

原创 Scratch上下移动

Scratch 3 上下移动一.积木学习二.学习内容1.上节内容回顾:往前或者往后走几步,没”-”号的表示往前走,有”-”号的表示往后走: 让角色从当前的造型,变成下一个造型.:让程序停止一段时间:程序开始的消息2.问题1如何让角色往上走,或者往下走?坐标的概念整个舞台宽 480, 高360左右位置用x表示, 上下位置用y表示最中心位置x = 0, y =0 记作(0,0)中心的正右方: x = 240, y = 0 记作(240, 0)中心的正上方:x = 0

2021-01-25 21:48:24 4572

原创 Pygame Sprite类2

Pygame Sprite类2update方法重写Sprite类的方法与 screen的Sprite方法不同.这个方法只是一个改变实例的位置与形状的方法.即Sprite的update其实是类的实际业处处理的方法# 创建:2021/1/24 8:46 下午 # 邮箱:[email protected]# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygameimport sysclass Ball(pygame.s

2021-01-24 21:13:49 220

原创 Mac使用心得

一个黑苹果萌新 的Mac使用心得前言最近心血来潮,用自己的电脑装了个黑苹果.电脑是荣耀macgic book 14 I7 8 + 256 (升级了硬盘变成1T)的了无线网卡自带的没有mac驱动,于是网购了博通的94352z 可可以上网了但是做为萌新入门,在使用的过程中,还是有很多的地方会踩坑.因此,开了此贴,将使用过程中碰到的总是,以级解决之道记录下来,以后得装后可以用.记录内容安装homebrew问题:homebrew的内容是挂在github上的,因此,按照官方的方法下载安装,容易出错

2021-01-24 16:27:17 238

原创 Pygame Sprite类1

Pygame Sprite类Sprite: 精灵pygame中为可见而专门设置的一个类继承# 从Sprite类继承,新建一个球的类class Ball(pygame.sprite.Sprite): pass# 实例化一个球类ball = Ball()Spirte中的基本方法pygame.sprite.Sprite.update - 控制精灵行为的方法pygame.sprite.Sprite.add - 将精灵添加到组中pygame.sprite.Sprite.remove - 从

2021-01-23 22:07:23 603 2

原创 Python类(4)类的继承

Python类(4)类的继承类的继承格式class 子类(基类): pass基类(父类): 被继承者(先辈)子类:继承者(后辈)如果没有基类,就用object比如,我们前面几节课的内容,都是直接继承自object这个基类的.理论上,所有的类都是object的子类可以用__base__属性查看子类的父类查看子类的父类class 子类(object): passprint(子类.__base__)输出:查看子类的父类的第二个示例class 子类(object): pass

2021-01-22 21:53:35 143

原创 python 类(class)3

python 类(3) 私有属性/方法前言本来想做成一个系列,后来感觉,写太多重复的东西反而有可能会影响阅读体验.努力将教程写的简单,易懂,有实用价值.启发对内容的思考.初稿就先这样将就着先吧.改天等一套内容写的差不多了,再重新整理一下吧.每次回头看自己写的东西,都有点惨不忍睹的感觉.本来就是因为看别人的教程感觉不是很符合一个读者,一个学习者的逻辑,所以想要将所学,尽可能写成易读易懂的样子.慢慢努力吧内容提要类中的__变量类中的__变量python中,在类的定义中在变量名前加双下划

2021-01-21 22:14:00 106

原创 Python 类(class)2

Python 类2前言考虑到有这几天更新的内容好像容量有点大.如果是跟着一路看过来的同学,可能会感觉到比较吃力,打算将内容讲解的更细致点,容量上更少点前情提要内容提要@property 装饰的只读属性@setter 装饰的写检验属性内容详情property将一个类的方法用@property来装饰一下,就变成了一个只读的属性示例:只读属性class MyClass(object): '''类的说明文档''' def __init__(self): se

2021-01-20 22:29:17 145

原创 Python 类(class)1

Python中的 类(class)(1)前言类(class)是python中很重要的一个概念,也是我们面象对象编程中最重要的概念主之一如何去理解类,就像如何去理解函数(方法)一样,首先要有一颗常态的心,不要因为新名词,新事物,而自乱阵脚.然后,尽量用类比的方法去学习一个新事物,会让你更容易理解.这里简单的说明一下本人对类的理解从使用角度讲,类是一个有特点的功能集成者.即当我们说到一个类的时候,通常会去了解这个类能做什么事情.比如,我们Pygame中的矩形(Rect)就是一个类,它可以移动.

2021-01-19 21:30:06 384

原创 Pygame(二十)音乐播放器2

Pygame(二十)音乐播放器2接上节内容:# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/17 0017# E-mail: [email protected] pygameimport sysimport osfrom random import randint'''音乐播放器'''# 音乐播放/暂停/继续/停止功能# 实现播放列表显示功能# 实现单曲循环/列表循环/随机播放功能# 实现进度条拖动改

2021-01-18 22:50:10 593 2

原创 Pygame(十九)音乐播放器1

Pygame(十九)音乐播放器1前情提要本节提要界成设计效果图界面代码设计# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/17 0017# E-mail: [email protected] pygameimport sysimport os'''音乐播放器'''# 音乐播放/暂停/继续/停止功能# 实现播放列表显示功能# 实现单曲循环/列表循环/随机播放功能# 实现进度条拖动改变进度功能#

2021-01-17 20:51:33 613 2

原创 Pygame(十八)音乐

Pygame(十八)音乐没有声音的游戏是没有灵魂的.游戏中怎么可以没有声音呢?前情提要本节提要内容详情这长长的一串,对比昨天的短小无力,感觉今天的工作是真的大.内容详情加载与播放加载pygame.mixer.music.load(filename/fileobject)参数说明:filename: 音乐文件的路径,可以是绝对路径,也可以是相对路径fileobject: python文件操作句柄(不鼓励此种用法)播放pygame.mixer.music.play(loo

2021-01-16 21:44:14 1335 1

原创 Pygame(十七)定时器

Pygame(十七)定时器感言:这个系统的教程从起笔到现在已经17天了.这17天时,本人博客的浏览量相比以前有了非常大的提高.这里首先感谢CSDN这个平台,让我能有机会将自己的所学与别人分享.然后感谢那些在我的博文里留言评论,点赞的各们朋友.你们的支持,让我的创作过程充满了努力的动力.非常感谢.前情提要本节提要内容详情看这个思维导图,感觉好像有点短小无力不过,之所以单独拿出来开一篇,是因为这个东西可以说是游戏设计中一个非常非常重要的概念.具体有多重要,我们后面的应用中慢慢道来set

2021-01-15 22:08:25 5710 1

原创 Pygame(十六)时间

Pygame(十六)时间前情提要前言无论是动画,还是游戏时间的概念都极为重要.无论是动画,还是游戏中都有一个重要的概念:,帧数意思是一秒内几副图前面,我们都是用time模块的sleep()函数来实现控制帧数的目的.但是实际上,电脑对我们事件的响应是有需要时间的.而我们用time模块的sleep()功能是不会考虑CPU的用时的,假装CPU能瞬间处理所有的事情.因此,这样的做法会带来一些不稳定因素,即这个帧速其实是会随着要处理的东西的增多而变的与实际目标相差更多大.反应到游戏(动画)中,看上去

2021-01-14 21:48:54 2969

原创 pygame(十五)拼图游戏

pygame(十五)拼图游戏前情提要本节提要内容详情截取目标矩形图片上节课,我们学到一个裁剪图片的方法: chop()这个方法是将原截掉一个十字形的位置,将剩下的四个矩形合并成一个新的矩形图片.这样非常不利于我们截取图片.因此,我们将这个方法进行改进,变成截取矩形位置的图片的方法rect_chop()代码def rect_chop(img:pygame.Surface, rect:pygame.Rect): '''截取指定位置的图形''' result_surface

2021-01-13 23:09:10 3706 6

原创 Pygame(十四)图像变换

Pygame(十四)图像变换前情提要本节提要前言上一节我们学习了如何从文件加载图像到pygame中以便我们将游戏做的更加精致,更加受人喜欢.但是有些时候,我们可能需要对文件加载进来的图片进行一些处理,以达到更好的效果.比如,我们在制作人物运动的时候,朝左走的人和朝右走的人是左右镜像的.如果我们还是用两个文件的图片的话,就会造成资源的浪费.不仅浪费有限的存储空间,还浪费人力,物力去准备这双重的资源.如果我们能够实现这样的镜象效果,就可以达成以上的节省目标.内容详情翻转翻转分左右翻转与上

2021-01-12 22:37:59 2272 1

原创 Pygame(十三)图像

Pygame(十二)图像前言对于一些复杂的游戏或者想要让我们的游戏角色与场景更加逼真与形象,用Pygame自带的作图方法就会显得很无奈.因此善用图片资源就成了我们的一个重要的手段.pyame中,图片资源的操作用的是image模块本节提要内容详情加载图片image_surface = pygame.image.load(filepath)image_surface = pygame.image.load(fileobj, namehint)参数说明:filepath: 图片文件的路

2021-01-11 21:33:35 364

原创 Pygame(十二)打砖块

Pygame(十二)打砖块目标小球撞击响应砖块撞击响应挡板撞击响应完整示例代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/9 0009# E-mail: [email protected]'''设计一个打砖块的游戏'''# 1. 开局屏幕上方有4行每行10个砖块# 2. 在屏幕下方有一个长100 的挡板# 3. 有一个小球从挡板中间出发,45角方向import pygameimport sysimpor

2021-01-10 20:03:10 1752 8

原创 Pygame(十一)文字

Pygame(十一)文字前言游戏开发中,所有的显示内容最终都是以图像的方式显示出来的.因此,需要用专用的方法来处理文字与图像之间的转换逻辑本内提要内容详情我的标题栏我做主先看一下最小pygame框架def change_title(): pygame.init() s = pygame.display.set_mode((800 ,600)) while 1: for event in pygame.event.get():

2021-01-09 20:44:32 1299

原创 Pygame(十)作业

Pygame(十)作业作业详解第一题题目随心圆:以鼠标左键点击为圆心,画一个半径50 ,颜色随机的圆分析需求分析:鼠标左键点事件获取鼠标的位置颜色随机画圆代码鼠标左键点击事件获取鼠标的位置if event.type == pygame.MOUSEBUTTONDOWN: if event.button == 1: pos = event.pos颜色随机r = randint(0,255)g = randint(0,255)b = ran

2021-01-08 23:51:50 412

原创 Pygame(九)事件(2)

Pygame(九)按键事件(2)前情提要作业解析完整代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/7 0007# E-mail: [email protected] pygame, sys, timefrom random import randintdef homework(): '''作业''' ''' 挡板接球 一个宽100 ,高10的棕色挡板,一个直径20的小球

2021-01-07 22:37:10 324 3

原创 Pygame(八)事件(1)

Pygame(八)事件(1)前情提要作业讲解作业内容自由落体画一个棕色的扁长方形当地板画一个蓝色小正方形(有能力的可以画球)当小球小球自上而下.起始高度差200每次落地后反弹高度为掉落高度的一半.直到反弹高度<5时停止不考虑加速度.即速度在下落与反弹过程中假高是恒定的思维分析方块有两种运动:弹起(向上)与下落(向下)向上运动按距离来算向下运动按碰撞来算.(也可以考虑用时间来算,下落的时间是弹起的时间的两倍)运动结束的条件是弹起的距离<5代码:# /usr/

2021-01-06 21:48:13 1306 4

原创 Pygame(七) 碰撞检测

Pygame(七) 碰撞检测前情提要作业分析:作业内容:设计一个碰到墙壁就反弹的pygame实现完整代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/5 0005# E-mail: [email protected] pygameimport sysimport timedef homeworkd(): pygame.init() s = pygame.display.set_mo

2021-01-05 21:39:24 4555 3

原创 Pygame(六)动画起步1

Pygame(六)动画起步1前情提要作业示例# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/4 0004# E-mail: [email protected] pygameimport sysdef homework(): pygame.init() screen = pygame.display.set_mode((800, 600)) screen.fill((255,255,

2021-01-04 22:19:19 686 2

Flask学习笔记(10)源码

Flask学习笔记(10)源码

2019-11-12

Flask学习笔记(9)源码

Flask学习笔记(9)源码

2019-11-11

Flask学习笔记8源码

Flask学习笔记8源码

2019-11-07

Flask学习笔记(7)

Flask学习笔记(7)

2019-11-07

Flask学习笔记(6)源码

Flask学习笔记(6)源码 Flask学习笔记(6)源码 Flask学习笔记(6)源码

2019-11-06

Flask学习笔记(5)源码

Flask学习笔记(5)源码 Flask学习笔记(5)源码 Flask学习笔记(5)源码

2019-11-06

Flask学习笔记(4).rar

Flask学习笔记(4)源码 Flask学习笔记(4)源码 Flask学习笔记(4)源码

2019-11-06

Flask学习笔记(3)源码

Flask学习笔记(3)源码

2019-11-06

FLask学习笔记(2)源码demo2.rar

python FLask学习笔记(2)源码

2019-11-06

FLask学习笔记源(1)源码 demo1.rar

flask个人博客的相应的源码,提供下载 Python Flask学习笔记(1)的相关源码

2019-11-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除