- 博客(34)
- 资源 (2)
- 收藏
- 关注
原创 用米思齐(Mixly)进行Arduino编程后上传失败问题记录与解决
在本人利用米思齐进行Arduino编程后,在上传到板上时遇到了如下报错:在查找相关资料以及排除故障后,发现是由于电脑连接着我的蓝牙耳机而导致米思齐(Mixly)识别串口出现错误。调整串口之后问题便得到了解决。此外,还有可能是以下原因会导致出现这样的报错:1、串口选择错误(选择正确的即可)2、驱动未安装(安装驱动即可)3、占用了txd或rxd(拔掉在端口txd或rxd的线,烧录完在插回去)4、主板型号选错了(选择正确的主板即可)...
2021-08-27 01:18:56
19663
原创 米思齐(Mixly for Mac)官方版下载过程以及遇到的问题/解决方法
最近由于在参加物联网平台开发项目,需要用到Mixly软件。Mixly是一款面向初学者、硬件编程爱好者的图形化编程工具。它完美地支持了Arduino、MicroPython,Python等语言的图形化编程。下面是本人在米思齐官网(http://mixly.org)下载Mixly For Mac的过程以及遇到的问题和解决方法:下载完压缩包后打开后的结果:接着,我们需要按照如下指令完成安装过程:1.需要安装相应的开源硬件驱动,常用的就是自带的cp210x驱动和ch34x驱动;2.需要从python.or
2021-08-09 23:17:08
12143
3
原创 算法学习—建模前期数据预处理和检验的方法
由于准备参加2.5~2.9的美国数学建模比赛,最近在复习前期数据预处理和检验的方法,正好利用这篇博客进行一下总结与回顾:(1)正态性检验1、为什么要进行正态性检验?正态性检验主要用于判断计量资料是否服从或近似服从正态分布。因为很多常见的统计学方法都要求数据满足正态性,如常见的t检验、单因素方差分析等。在考虑采用上述方法时,要对数据进行正态性检验。如果数据明显不服从正态分布,但由于我们没有正态性检验的结果,直接使用了t检验、单因素方差分析等参数检验的方法,有可能导致统计效能下降,导致假阴性风险增加。
2021-01-27 16:40:54
3180
原创 算法学习—利用Python解决多元线性回归数据统计
由于准备参加数学建模比赛,最近在CSDN上看了不少关于利用Python来完成对数据多元线性回归的资料,想利用这篇博客进行一下总结与回顾:
2020-11-04 21:39:03
1164
原创 原创《正确写作美国大学生数学建模竞赛论文》思维导图
由于即将参加数学建模比赛,为了回顾及巩固《正确写作美国大学生数学建模竞赛论文》一书,本人做了一个全书的思维导图,仅供参考,欢迎交流讨论:声明:原创文章发自CSDN,转载请保留出处和作者!...
2020-11-04 20:49:40
852
原创 Python学习之路日志—Web应用程序(5)
在这篇开始的博客中,我将学习创建对用户友好而直观的网页,让用户无需通过管理网站就能添加新的主题和条目,以及编辑既有的条目。我还将学习着添加一个用户注册系统,让用户能够创建账户和自己的学习笔记。2.1 让用户能够输入数据:建立用于创建用户账户的身份验证系统之前,我们先来添加几个页面,让用户能够输入数据。我们将让用户能够添加新主题、添加新条目以及编辑既有条目。2.1.1 添加新主题:首先来让用户能够添加新主题。创建基于表单的页面的方法几乎与前面创建网页一样:定义一个URL,编写一个视图函数并编写一个模板
2020-09-20 20:01:07
267
原创 Python学习之路日志—Web应用程序(4)
在今天这篇博客中,我将继续对学习笔记网页的开发:2.2 创建其他网页:制定创建网页的流程后,可以开始扩充“学习笔记”项目了。我们将创建两个显示数据的网页,其中一个列出所有的主题,另一个显示特定主题的所有条目。对于每个网页,我们都将指定URL模式,编写一个视图函数,并编写一个模板。但这样做之前,我们先创建一个父模板,项目中的其他模板都将继承它。2.2.1 模版继承:1)父模版:我们首先来创建一个名为base.html的模板,并将其存储在index.html所在的目录中。这个文件包含所有页面都有的元素
2020-09-16 14:08:53
282
原创 Python学习之路日志—Web应用程序(3)
在今晚这篇博客中,我将继续对学习笔记网页的开发:2.1 创建网页:学习笔记主页:使用Django创建网页的过程通常分三个阶段:定义URL、编写视图和编写模板。首先,你必须定义URL模式。URL模式描述了URL是如何设计的,让Django知道如何将浏览器请求与网站URL匹配,以确定返回哪个网页。 每个URL都被映射到特定的视图 ——视图函数获取并处理网页所需的数据。视图函数通常调用一个模板,后者生成浏览器能够理解的网页。 鉴于我们只是要确保“学习笔记”按要求的那样工作,我们将暂时让这个网页尽可能简单。We
2020-09-14 21:24:43
233
原创 Python学习之路日志—Web应用程序(2)
在这篇博客中,我将继续利用Django开发Web应用程序:1.2.3 用Django管理网站:为应用程序定义模型时,Django提供的管理网站(admin site)让你能够轻松地处理模型。网站的管理员可使用管理网站,但普通用户不能使用。在本节中,我们将建立管理网站, 并通过它使用模型Topic 来添加一些主题。Django允许你创建具备所有权限的用户——超级用户。权限决定了用户可执行的操作。最严格的权限设置只允许用户阅读网站的公开信息;注册了的用户通常可阅读自己的私有数据,还可查看一些只有会员才能查
2020-09-14 13:00:49
202
原创 Python学习之路日志—Web应用程序(1)
在本章中,我将学习如何使用Django来开发一个名为“学习笔记”(LearningLog)的项目,这是一个在线日志系统,能够记录所学习的有关特定主题的知识。 我们将为这个项目制定规范,然后为应用程序使用的数据定义模型。我们将使用Django的管理系统来输入一些初始数据,再学习编写视图和模板,让Django能够为我们的网站创建网页。 Django是一个Web框架 —— 一套用于帮助开发交互式网站的工具。Django能够响应网页请求,还能让用户更轻松地读写数据库、管理用户等。1.1 建立项目:建立项目时,首
2020-09-13 15:53:19
347
原创 Python学习之路日志—在Mac OS X上利用pip3安装pygame记录
之前笔者的第一部分《外星人入侵》是在家中的台式机的Windows系统上完成的,而现在我希望在我的笔记本电脑上来运行这个程序。我想通过这篇博客来记录我在Mac OS X上利用pip3来安装pygame的过程以及遇到的问题:一开始,我想通过在终端输入pip3 install pygame 来安装,却遇到了下面的情况:用pip管理工具安装库文件时,默认使用国外的源文件,因此在国内的下载速度会比较慢。于是,我想办法将pip源更换到国内镜像,在一番搜索后,我找到了如下解决方法:pip3 install pyg
2020-09-11 00:06:18
358
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(8)
在今晚的学习中,我将继续昨晚的内容:5.1.4 概述最受欢迎的仓库:对这些数据进行可视化时,我们需要涵盖多个仓库。下面就来编写一个循环,打印API调用返回的每个仓库的特定信息,以便能够在可视化中包含所有这些信息:# -*- coding:utf-8 -*-import requests# 执行API调用并存储响应url = 'https://api.github.com/search/repositories?q=language:python&sort=stars'r = re
2020-09-09 20:24:33
188
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(7)
在从今天开始的学习中,我将学习如何编写一个独立的程序,并对其获取的数据进行可视化。这个程序将使用Web应用编程接口 (API)自动请求网站的特定信息而不是整个网页,再对这些信息进行可视化。由于这样编写的程序始终使用最新的数据来生成可视化,因此即便数据瞬息万变,它呈现的信息也都是最新的。5.1 使用web API:Web API 是网站的一部分,用于与使用非常具体的URL请求特定信息的程序交互。这种请求称为API调用。请求的数据将以易于处理的格式(如JSON或CSV)返回。依赖于外部数据源的大多数应用程序
2020-09-08 23:04:45
244
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(6)
今天,我将继续昨天对世界人口地图的制作:4.2.5 在世界地图上呈现数字数据:为练习在地图上呈现数字数据,我们来创建一幅地图,显示三个北美国家的人口数量:import pygal_maps_world.mapswm = pygal_maps_world.maps.World()wm.title = 'Population of Countries in North America'wm.add('North America', {'ca':34126000, 'us':309349000,
2020-09-07 20:10:06
246
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(5)
在今晚,我将学习新的内容,我会下载JSON格式的人口数据,并使用json 模块来处理它们。4.2 制作世界人口地图:4.2.1 下载与提取世界人口数据:将文件population_data.json复制到本章程序所在的文件夹中,这个文件包含全球大部分国家1960~2010年的人口数据。我们来研究一下population_data.json,看看如何着手处理这个文件中的数据:这个文件实际上就是一个很长的Python列表,其中每个元素都是一个包含四个键的字典:国家名、国别码、年份以及表示人口数量的值。
2020-09-06 14:26:41
346
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(4)
在今天晚上的学习中,我将继续完善昨晚所做的天气图。3.2 添加更多的数据:设置好图表后,我们来添加更多的数据,以成一幅更复杂的天气图:3.2.1 涵盖更长的时间:现在可以创建覆盖整年的天气图了:# -*- coding:utf-8 -*-import csvfrom matplotlib import pyplot as pltfrom datetime import datetime# 从文件中获取日期和最高气温filename = 'sitka_weather_2014.c
2020-09-04 00:34:19
237
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(3)
在今晚的学习中,我将学着获取数据,并对这些数据进行可视化。3.1 CSV文件:要在文本文件中存储数据,最简单的方式是将数据作为一系列以逗号分隔的值 (CSV)写入文件。这样的文件称为CSV文件。3.1.1 分析CSV文件头:csv 模块包含在Python标准库中,可用于分析CSV文件中的数据行,让我们能够快速提取感兴趣的值。下面先来查看这个文件的第一行,其中包含一系列有关数据的描述:# -*- coding:utf-8 -*-import csvfilename = 'sitka_wea
2020-09-03 00:22:39
242
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(2)
今天,我将继续利用matplotlib开发数据可视化项目的学习:2.1 随机漫步:首先,我将使用Python来生成随机漫步数据,再使用matplotlib将这些数据呈现出来。随机漫步是这样行走得到的路径:每次行走都完全是随机的,没有明确的方向,结果是由一系列随机决策决定的。为模拟随机漫步,我将创建一个名为RandomWalk 的类,它随机地选择前进方向。这个类需要三个属性,其中一个是存储随机漫步次数的变量num_points,其他两个是列表x_values和y_values,分别存储随机漫步经过的每个
2020-09-02 00:14:48
225
原创 Python学习之路日志—利用matplotlib开发数据可视化项目(1)
在学习完了《Python编程:从入门到实践》的第一个项目“外星人入侵”后,我来到了第二个项目:“数据可视化”,而这个项目我将在Mac OS X系统中用Sublime Text来完成。1.1 安装matplotlib:Apple的标准Python安装自带了matplotlib。要检查系统是否安装了matplotlib,可打开一个终端会话并尝试导入matplotlib,如下图所示:如果没有出现任何错误消息,就说明系统已经安装了matplotlib。1.2 绘制简单的散点图:下面来使用matplot
2020-08-30 00:30:58
319
原创 Python学习之路日志—原创《Python编程:从入门到实践》前11章思维导图
为了回顾及巩固《Python编程:从入门到实践》的第一部分,也就是所谓基础知识的学习,本人做了一个1-11章的思维导图,仅供参考,欢迎交流讨论:声明:原创文章发自CSDN,转载请保留出处和作者!...
2020-08-27 22:39:44
225
原创 Python学习之路日志—《外星人入侵》游戏项目总结回顾(5)
在今晚这篇博客中,我将简单回顾《外星人入侵》游戏项目的最后两个文件:settings.py 和 alien_invasion.py。8. settings :文件settings.py包含Settings 类,这个类包含方法__init__() ,initialize_dynamic_settings()和increase_speed()。它存储着所有关于游戏的设置,以下是其全部内容:class Settings():‘’‘存储所有设置的类’’’...
2020-08-26 21:32:10
416
原创 Python学习之路日志—《外星人入侵》游戏项目总结回顾(4)
在这篇博客中,我将简单分析一下 game_stats.py、scoreboard.py 和 button.py 三个文件:5. game_stats:这是一个用于跟踪游戏各类统计信息的类,以下是其全部内容:
2020-08-26 00:26:17
436
原创 Python学习之路日志—《外星人入侵》游戏项目总结回顾(3)
在这篇博客中,我将简单分析一下 ship.py、alien.py 和 bullet.py 三个文件:2. Ship:文件ship.py包含Ship 类,这个类包含方法__init__() 、管理飞船位置的方法update() 以及在屏幕上绘制飞船的方法blitme() 等。表示飞船的图像存储在文件夹images下的文件ship.bmp中。以下是ship.py的全部内容:...
2020-08-25 23:10:38
431
原创 Python学习之路日志—《外星人入侵》游戏项目总结回顾(2)
这篇博客中,我将继续昨天的内容,对game_functions.py进行简单回顾。(14)change_fleet_direction():def change_fleet_direction(ai_settings,aliens): """将整群外星人下移,并改变它们的方向""" for alien in aliens.sprites(): alien.rect.y += ai_settings.fleet_drop_speed ai_settings.fleet_direction *=
2020-08-25 20:43:54
381
原创 Python学习之路日志—《外星人入侵》游戏项目总结回顾(1)
不知不觉,我用了差不多一周的时间将《Python编程—从入门到实践》中的第二部分的第一个项目:《外星人入侵》游戏大致过了一遍。在今天这篇博客中,我将简单回顾一下这个程序,让自己更清楚这个项目的组织结构。1. game_functions:文件game_functions.py中包含一系列函数,游戏的大部分工作都是由它们完成的。其存储着大量让游戏《外星人入侵》运行的函数。通过创建模块game_functions ,可避免alien_invasion.py太长,并使其逻辑更容易理解,以下是该文件中的所有函数
2020-08-25 00:12:40
1319
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(8)
在今天的学习中,我同样将在昨天的基础上继续对游戏进行开发与完善,让游戏变得更有意思:10.1 提高等级让游戏变得更难:首先需要重新组织Settings 类,将游戏设置划分成静态的和动态的两组。对于随着游戏进行而变化的设置,我们还确保它们在开始新游戏时被重置:我们在__init__() 中初始化静态设置。在第25行处,我们添加了设置speedup_scale ,用于控制游戏节奏的加速,将其设置为 1.1 能够将游戏节奏提高,让游戏既有难度,又并非不可完成。接着,我们调用initialize_dyn
2020-08-22 23:46:56
242
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(7)
在今天的学习中,我将在昨天的基础上继续对游戏进行开发与完善:9.1 添加一个Play按钮:在本节中,我们将学习如何添加一个Play按钮,它在游戏开始前出现,并在游戏结束后再次出现,让玩家能够开始新游戏。为此,在game_stats.py中输入如下代码:现在游戏一开始将处于非活动状态,等我们创建Play按钮后,玩家才能开始游戏。由于Pygame没有内置创建按钮的方法,我们创建一个Button 类,用于创建带标签的实心矩形。可以在游戏中使用这些代码来创建任何按钮。下面是Button 类的第一部分, 将这
2020-08-22 00:31:39
251
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(6)
在今天的学习中,我将学习如何能够写出程序使得游戏结束:8.1 检测外星人和飞船的碰撞:我们首先检查外星人和飞船之间的碰撞,以便外星人撞上飞船时我们能够作出合适的响应。我们在更新每个外星人的位置后立即检测外星人和飞船之间的碰撞:方法spritecollideany() 接受两个实参:一个精灵和一个编组。它检查编组是否有成员与精灵发生了碰撞,并在找到与精灵发生了碰撞的成员后就停止遍历编组。在这里, 它遍历编组aliens ,并返回它找到的第一个与飞船发生了碰撞的外星人。 如果没有发生碰撞,sprite
2020-08-21 00:54:28
245
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(5)
今天,我将学习如何能够让昨天设置好的外星人群移动起来:6.1 使外星人向右移动:为了让外星人移动,需要使用alien.py中的方法update() ,且对外星人群中的每个外星人都调用它。首先,添加一个控制外星人速度的设置:接着,需要使用这个设置来实现update() :每次更新外星人位置时,都将它向右移动,移动量为alien_speed_factor 的值。我们使用属性self.x 跟踪每个外星人的准确位置。然后,使用self.x 的值来更新外星人的rect 的位置(见28行处)。在主 whi
2020-08-19 23:35:32
299
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(4)
今天,我将学习如何在游戏《外星人入侵》中添加外星人:5.1 创建外星人:首先,我们需要编写一个名为“Alien”的类:这个类的大部分代码都与 Ship 类相似:首先,需要导入模块pygame 。Alien 的方法__init__() 接受三个参数: self ,ai_settings和 screen 。加载外星人图像后,使用get_rect() 获取相应的属性rect ,我将外星人放在屏幕左上角附近。为此,可以将每个外星人的左边距都设置为外星人的宽度,并将上边距设置为外星人的高度(
2020-08-18 23:46:20
665
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(3)
4.1 添加射击功能:为了添加射击功能。我们将编写玩家按空格键时发射子弹(小矩形)的代码。子弹将在屏幕中向上穿行,抵达屏幕上边缘后消失,首先,更新settings.py来添加子弹设置:如11-14行所示,这些设置创建宽3像素、高15像素的深灰色子弹。子弹的速度比飞船稍低。下面来创建存储 Bullet 类的文件bullet.py:简要分析一下:Bullet 类继承了我们从模块pygame.sprite中导入的 Sprite 类。通过使用 Sprite,可将游戏中相关的元素编组,进而同时操作编
2020-08-18 01:38:31
322
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(2)
3.1 使用按键驾驶飞船:下面来让玩家能够左右移动飞船。为此,我将编写代码,在用户按左或右箭头键时作出响应:简要分析一下:在函数check_events() 中包含形参 ship ,因为玩家按右箭头键时,需要将飞船向右移动。在函数check_events() 内部,我在事件循环中添加了一个 elif 代码块,以便在Pygame检测到KEYDOWN 事件时作出响应(见13行)。读取属性event.key ,以检查按下的是否是右箭头键(pygame.K_RIGHT )(见14行)。如果按下的是
2020-08-17 00:46:12
449
原创 Python学习之路日志—利用pygame开发《外星人入侵》游戏项目(1)
1.1 创建pygame窗口及响应用户输入:首先,我创建一个空的pygame窗口。使用pygame编写的游戏的基本结构如下:import sysimport pygamedef run_game(): pygame.init() #初始化 screen = pygame.display.set_mode((1200,800)) #调用这个来创建名为screen的窗口 pygame.display.set_caption('Alien Invasion') #命名游戏
2020-08-16 21:32:33
865
4
原创 Python学习之路日志—Python3.7中pygame的安装过程以及相关问题的解决办法个人记录
文章导航前言:安装过程及记录:验证是否成功安装:前言:最近趁着暑假在家在自学Python,看的教材是由 Eric Matthes 编写的,袁国忠翻译的《Python编程—从入门到实践》:该书的第二部分包含三个不同类型的项目,第一个项目是外星人入侵:使用 Python开发游戏(12-14章),这个项目需要使用pygame包来开发一款2D游戏。在开始编码前,这本书先介绍了如何在Linux、OS X和Microsoft Windows中安装Pygame。我用的是64位的Window系统,而且我的Pytho
2020-08-14 00:34:13
395
MCM/ICM 2021 F题二等奖(Honorable Mention)竞赛论文分享
2021-08-06
APMCM 2020 B题三等奖(Third Prize)论文分享
2021-01-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人