HTML5学习笔记 什么是HTMLHyper Text Markup Language(超文本标记语言)超文本包括:文字、图片、音频、视频、动画等HTML5+CSS3我的第一个网页<!--DOCTYPE:告诉浏览器,我们要使用什么规范 --><!DOCTYPE html><html lang="en"><!-- head标签代表网页头部--><head> <!-- meta描述性标签,它用来描述我们网站的一些信息--> &
Javaweb学习笔记04-JSP JSP什么是JSPjava Server Pages:java服务器端页面,也和Servlet一样,用于动态Web技术!最大特点:写JSP就像在写HTML区别:HTML只给用户提供静态数据JSP页面中可以嵌入java代码,为用户提供动态数据JSP原理思路:JSP到底怎么执行的!代码层面没有任何问题服务器内部工作 Tomcat中有一个work目录 IDEA中使用Tomcat会在IDEA的Tomcat中生成一个work目录我电脑的地址:C:\Users\le
Javaweb学习笔记03-Cookie、Session Cookie、Session会话会话:用户打开一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之为会话有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学曾经来过,称之为有状态会话一个网站,怎么证明你来过?客户端 服务端服务端给客户端一个信件,客户端下次访问服务端带上信件就可以了;cookie服务器登记你来过了,下次你来的时候我来匹配你;session保存会话的两种技术cookie客户端技术(响应、请求)session服务器技
Javaweb学习笔记02-Servlet JavaWebServletHttpServletResponseweb服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,一个代表响应的HTTPServletResponse对象;如果要获取客户端请求过来的参数:找HttpServletRequest如果要给客户端响应一些信息:找HttpServletResponse1、简单分类:负责向浏览器发送数据的方法ServletOutputStream getOutputStream(
Javaweb学习笔记01-web概念、Tomcat、Maven、Servlet Java Web1、基本概念web开发:静态webhtml,css提供给所有人看的数据始终不会发生变化动态web淘宝,几乎是所有的网站;提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/JSP,ASP,PHP在Java中,动态web资源开发的技术统称为JavaWeb;静态web*.htm, *.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。通络;静态web存在的缺
Python数据分析学习笔记4 4. Matplotlib库入门4.1 Matplotlib库介绍导入方式:import matplotlib.pyplot as plt范例:代码解释看注释:import matplotlib.pyplot as pltplt.plot([3,1,4,5,2])# 参数:# ylabel:标签名称# fontdict:将字体样式添加到标签# labelpad:这有助于我们设置标签和轴之间的间距plt.ylabel("Grade")# savefig()方法用于保存绘制数据后创
Python数据分析学习笔记3 3. 图像手绘效果实现3.1 PIL库PIL库是一个具有强大图像处理能力的第三方库。在命令行下的安装方法:from PIL import Image范例:将数组转化为ndarray数组In [1]: from PIL import ImageIn [2]: import numpy as npIn [3]: im = np.array(Image.open("E:/tiger.jpg"))In [4]: print(im.shape,im.dtype)(435, 428, 3)
Python数据分析学习笔记2 2. Numpy数据存取和函数2.1 数据的csv文件存取CSV(Comma-Separated Value,逗号分隔值)是一种常见的文件格式,用来存储批量数据。书写方式:np.savetxt(frame,array,fmt=’%.18e’,delimiter=None)frame:文件、字符串或产生器,可以是.gz或.bz2的压缩文件。array:存入文件的数组。fmt:写入文件的格式,例如:%d %.2f %.18e。delimiter:分割字符串,默认是任何空格。dtype:数据类型
STM32学习笔记3 按键开发基础按键扫描的基本原理按键信号的识别: 一般来说,按键的两个引脚的一端通过电阻上拉到高电平,另一端则接地在没有按键按下的时候,输入引脚为高电平当有按键按下,输入引脚则为低电平通过反复读取按键输入引脚的信号,然后识别高低电平来判断是否有按键触发去抖动: 按键的输入引脚有低电平产生不代表一定是有按键按下,也许是干扰信号,因此,需要通过去抖动处理,将这些干扰信号过滤,从而获得真实的按键触发信号。如何去抖动: 首次检测到按键输入引脚有低电平后,稍作延时,再次读取该引脚,如还是低电平,则确认为按
Django项目部署至华为云服务器 部署Django项目到华为云服务器教程基于Ubuntu 20.04 + Python3.7 + mysql5.6 + Django3.2.6 + 宝塔Linux面板1. ssh连接华为云服务器2. 安装宝塔面板宝塔面板官网Ubuntu安装脚本:在命令行中输入wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh安装成功后即可出现公网面板和内
Python数据分析学习笔记1 数据的维度一维数据一维数据由对等关系的有序或无序数据构成,采用线性方式组织列表和数组二维数据是由多个一维数据组成,是一维数据的组合形式多维数据由一维或二维数据在新维度上的拓展形成高维数据利用最基本的二元关系展示数据间的复杂结构Numpy功能:N维数组对象:ndarray数组对象可以去掉元素间运算所需的循环,使一维向量更像单个数据。设置专门的数组对象,经过优化,可以提升这类应用的运算速度。ndarray是一个多维数组对象,由两部分构成:实际的数据描述这些数据的元数
STM32学习笔记2 一个GPIO口,包含哪些属性和功能?上拉电阻结构是什么?有什么用?下拉电阻结构是什么?有什么用?什么是推挽输出?GPIOGPIO:General Purpose Input & OutputSTM32芯片最拥有GPIOA、GPIOB…GPIOG等7组端口,每组端口最多拥有Pin0、Pin1…Pin15共16个引脚。STM32的每个I/O端口都可以自由编程,但I/O端口寄存器必须按32位字被访问。STM32的每个I/O端口都由7个寄存器来控制STM32的I/O端口可以由软件配置成8种
STM32学习笔记1 软件安装STM32 CubeMx安装STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,目的就是为了方便开发者, 允许用户使用图形化向导生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32 全系列芯片。安装CubeMx一共需要三个JRE (Java Runtime Environment) Java运行环境 运行JAVA程序所必须的环境的集合STM32CubeMXHAL库 STM32 HAL
嵌入式C学习笔记2 指针每一个变量都有一个内存位置,每一个内存位置都定义了可使用 & 运算符访问的地址,它表示了在内存中的一个地址。指针也就是内存地址,指针变量是用来存放内存地址的变量。指针的声明int *ip; /* 一个整型的指针 */double *dp; /* 一个 double 型的指针 */float *fp; /* 一个浮点型的指针 */char *ch; /* 一个字符型的指针 */注:所有实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型
嵌入式C学习笔记1 进制转换二进制0B十六进制0x例: 十进制15 0B1111 0XOF二进制转十六进制一位十六进制数等于4位二进制数,通过8421码来计算结构体结构体是把多个不同类型的数据集合在一个类型之中数组:相同数据类型的集合结构体:不同数据类型的集合结构体的定义方式一:struct name{int a;char b;float c;}x;使用结构体的步骤://1、定义结构体struct name{int a;char b;float c;}x;//2、写入数据
Python高级培训考核 任务要求:成功运行学员管理系统案例将学员管理系统案例中,原本存入DAT的数据,存入mysql数据库,而且可以根据指令调出mysql数据库数据展示。修改保存数据的函数,让其自动每秒保存数据到mysql数据库中。(使用线程)模块代码保存模块将数据保存到mysql数据库中#保存学员信息 def save_student(self): time.sleep(30) DBHOST = 'localhost' # 配置地址信息 DBUSER
Python高级培训学习笔记6 使用pymysql连接数据库并进行增删改查的步骤一、导入pymysql并获取连接import pymysqlDBHOST = 'localhost'DBUSER = 'root'DBPASS = 'cuican233'DBNAME = 'test'try: db = pymysql.connect(host=DBHOST,user=DBUSER, password=DBPASS, database=DBNAME) print('数据库连接成功!')except pymy
Python高级培训学习笔记5 定时器在实际应用中,我们经常需要使用定时器去触发一些事件。Python中通过线程实现定时器timer,其使用非常简单示例:使用定时器实现当前时间每秒循环输出一次代码:import threading#导入线程类import time#导入python中的time类def run():#定义run方法,执行实际逻辑结构 print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) # 以%Y-%m-%d %H:%M:%S的格式输出
Python高级培训学习笔记4 信号量信号量又称:Semaphore类迭代锁同时只允许一个线程更改数据,而Semaphore是同时允许一定数量的线程更改数据,比如一个地方有3个座位,那最多只允许3个人坐,后面的人只能等有人起来了才能再坐人def run(n,semaphore): semaphore.acquire() #加锁 time.sleep(3) print('run the thread:%s' % n) semaphore.release() #释放if __name_