Python皮卡丘
系列文章
序号 | 文章目录 | 直达链接 |
1 | 浪漫520表白代码 | https://want595.blog.csdn.net/article/details/130666881 |
2 | 满屏表白代码 | https://want595.blog.csdn.net/article/details/129794518 |
3 | 跳动的爱心 | https://want595.blog.csdn.net/article/details/129503123 |
4 | 漂浮爱心 | https://want595.blog.csdn.net/article/details/128808630 |
5 | 爱心光波 | https://want595.blog.csdn.net/article/details/132311588 |
6 | 流星雨 | https://want595.blog.csdn.net/article/details/129395465 |
7 | 满天星 | https://want595.blog.csdn.net/article/details/129572082 |
8 | 烟花秀 | https://want595.blog.csdn.net/article/details/128746664 |
9 | 圣诞树 | https://want595.blog.csdn.net/article/details/128213770 |
10 | 雪花代码 | https://want595.blog.csdn.net/article/details/129038108 |
11 | 模拟星空 | https://want595.blog.csdn.net/article/details/129948882 |
12 | 生日蛋糕 | https://want595.blog.csdn.net/article/details/129694998 |
13 | 樱花树 | https://want595.blog.csdn.net/article/details/130350743 |
14 | 五彩气球 | https://want595.blog.csdn.net/article/details/130950744 |
15 | 七彩花朵 | https://want595.blog.csdn.net/article/details/130897838 |
16 | 恶搞代码 | https://want595.blog.csdn.net/article/details/131274862 |
17 | 代码雨 | https://want595.blog.csdn.net/article/details/132574687 |
18 | 中秋星空 | https://want595.blog.csdn.net/article/details/132910075 |
19 | 国庆祝福 | https://want595.blog.csdn.net/article/details/133427031 |
前言
用python实现三只爱心宝可梦!
小海龟
Python中的turtle是一个简单易用的绘图库,它可以让我们通过编程的方式画出各种各样的图形。它内部实现了一个海龟(turtle),我们可以通过控制海龟的移动方向和长度等参数来进行绘图,非常适合初学者入门使用。本文将介绍turtle的基本绘图函数和实例,帮助初学者快速入门。
1.安装turtle
turtle是Python自带的标准库,所以我们不需要安装任何东西,只需要在Python终端或者编辑器上导入turtle库即可开始使用。
import turtle
2.turtle的基本绘图函数
turtle的基本绘图函数有很多,下面是一些常用的函数:
- turtle.forward(distance):向当前方向移动指定距离的海龟。
- turtle.backward(distance):向相反方向移动指定距离的海龟。
- turtle.right(angle):将当前方向向右旋转指定角度。
- turtle.left(angle):将当前方向向左旋转指定角度。
- turtle.penup():将画笔抬起,不再画出海龟的轨迹。
- turtle.pendown():将画笔放下,继续画出海龟的轨迹。
- turtle.pensize(width):设置画笔的宽度为指定大小。
- turtle.pencolor(color):设置画笔的颜色为指定颜色。
- turtle.fillcolor(color):设置填充的颜色为指定颜色。
- turtle.begin_fill():开始填充。
- turtle.end_fill():结束填充。
- turtle.circle(radius):绘制一个指定半径的圆形。
3.turtle的实例
下面是一些turtle的实例,帮助我们更好地理解上面的基本绘图函数。
3.1 简单的绘图
我们先来画一个简单的图形,让海龟向前移动100个像素,然后向左旋转90度,再向前移动100个像素,最后向左旋转90度,形成一个正方形图形。
import turtleturtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)turtle.done() # 表示绘图结束
3.2 绘制彩色螺旋图形
下面我们来绘制一个彩色的螺旋图形,让海龟不断向前移动并旋转,每次旋转的角度和颜色都不同,最终形成一个美丽的螺旋图形。
import turtleturtle.speed(10)
for i in range(200):turtle.forward(i)turtle.right(98)turtle.pencolor('red')turtle.pencolor('orange')turtle.pencolor('yellow')turtle.pencolor('green')turtle.pencolor('cyan')turtle.pencolor('blue')turtle.pencolor('purple')turtle.done()
3.3 绘制五角星
下面我们来绘制一个五角星,让海龟向前移动100个像素,向左旋转72度,重复5次,即可形成一个五角星。
import turtleturtle.pensize(5)
turtle.pencolor('purple')
turtle.fillcolor('yellow')
turtle.begin_fill()for i in range(5):turtle.forward(100)turtle.right(72)turtle.forward(100)turtle.left(144)turtle.end_fill()
turtle.done()
3.4 绘制圆形和正方形
下面我们来绘制一个圆形和一个正方形,先绘制一个圆形,然后以圆心为起点,绘制出正方形。
import turtleturtle.circle(50) # 画一个圆形turtle.penup() # 将画笔抬起
turtle.goto(0, -50) # 将海龟移动到圆心下面的位置
turtle.pendown() # 将画笔放下for i in range(4):turtle.forward(100)turtle.left(90)turtle.done()
通过上述实例,我们可以看到,turtle库非常适合初学者入门使用,其简单易用的接口和实时绘图的效果,可以让我们快速地理解和掌握Python编程的基本思路和方法。
皮卡丘
迷你版
程序设计
import turtle as t
import time
# 基础设置
t.setup(500, 500) # 设置画布大小
t.bgcolor("pink")
t.title("pikachu")
t.pensize(1) # 设置画笔的大小
# 画左偏曲线函数
def left(ang, dis, step, n):for i in range(n):dis += step # dis增大stept.lt(ang) # 向左转ang度t.fd(dis) # 向前走dis的步长
def right(ang, dis, step, n):for i in range(n):dis += stept.rt(ang) # 向左转ang度t.fd(dis) # 向前走dis的步长
# 画耳朵
def Ears():t.color("black", "yellow")# 左耳朵曲线t.pu() # 提笔t.goto(-50, 100) # 笔头初始位置t.pd() # 下笔t.setheading(110) # 画笔角度t.begin_fill()left(1.2, 0.4, 0.1, 40)t.setheading(270) # 画笔角度left(1.2, 0.4, 0.1, 40)t.setheading(44) # 画笔角度t.forward(32)t.end_fill()# 右耳朵曲线t.pu() # 提笔t.goto(50, 100) # 笔头初始位置t.pd() # 下笔t.setheading(70) # 画笔角度t.begin_fill()right(1.2, 0.4, 0.1, 40)t.setheading(270) # 画笔角度right(1.2, 0.4, 0.1, 40)t.setheading(136) # 画笔角度t.forward(32)t.end_fill()# 耳朵黑t.begin_fill()t.fillcolor("black")t.pu() # 提笔t.goto(88, 141) # 笔头初始位置t.pd() # 下笔t.setheading(35) # 画笔角度right(1.2, 1.6, 0.1, 16)t.setheading(270) # 画笔角度right(1.2, 0.4, 0.1, 25)t.setheading(132) # 画笔角度t.forward(31)t.end_fill()t.begin_fill()t.fillcolor("black")t.pu() # 提笔t.goto(-88, 141) # 笔头初始位置t.pd() # 下笔t.setheading(145) # 画笔角度left(1.2, 1.6, 0.1, 16)t.setheading(270) # 画笔角度left(1.2, 0.4, 0.1, 25)t.setheading(48) # 画笔角度t.forward(31)t.end_fill()
# 画尾巴
def Tail():# 尾巴t.begin_fill()t.fillcolor("yellow")t.pu() # 提笔t.goto(64, -140) # 笔头初始位置t.pd() # 下笔t.setheading(10) # 画笔角度t.forward(20)t.setheading(90) # 画笔角度t.forward(20)t.setheading(10) # 画笔角度t.forward(10)t.setheading(80) # 画笔角度t.forward(100)t.setheading(35) # 画笔角度t.forward(80)t.setheading(260) # 画笔角度t.forward(100)t.setheading(205) # 画笔角度t.forward(40)t.setheading(260) # 画笔角度t.forward(37)t.setheading(205) # 画笔角度t.forward(20)t.setheading(260) # 画笔角度t.forward(25)t.setheading(175) # 画笔角度t.forward(30)t.setheading(100) # 画笔角度t.forward(13)t.end_fill()
# 画脚
def Foots():# 脚t.begin_fill()t.fillcolor("yellow")t.pensize(2)t.pu() # 提笔t.goto(-70, -200) # 笔头初始位置t.pd() # 下笔t.setheading(225) # 画笔角度left(0.5, 1.2, 0, 12)left(35, 0.6, 0, 4)left(1, 1.2, 0, 18)t.setheading(160) # 画笔角度t.forward(13)t.end_fill()t.begin_fill()t.fillcolor("yellow")t.pensize(2)t.pu() # 提笔t.goto(70, -200) # 笔头初始位置t.pd() # 下笔t.setheading(315) # 画笔角度right(0.5, 1.2, 0, 12)right(35, 0.6, 0, 4)right(1, 1.2, 0, 18)t.setheading(20) # 画笔角度t.forward(13)t.end_fill()
# 画身体
def Body():# 外形轮廓t.begin_fill()t.pu() # 提笔t.goto(112, 0) # 笔头初始位置t.pd() # 下笔t.setheading(90) # 画笔角度t.circle(112, 180)t.setheading(250) # 画笔角度left(1.6, 1.3, 0, 50)left(0.8, 1.5, 0, 25)t.setheading(255) # 画笔角度left(0.4, 1.6, 0.2, 27)left(2.8, 1, 0, 45)right(0.9, 1.4, 0, 31)t.setheading(355) # 画笔角度right(0.9, 1.4, 0, 31)left(2.8, 1, 0, 45)left(0.4, 7.2, -0.2, 27)t.setheading(10) # 画笔角度left(0.8, 1.5, 0, 25)left(1.6, 1.3, 0, 50)t.end_fill()
def Eyes_Open():# 左眼睛t.begin_fill()t.fillcolor("black")t.pu() # 提笔t.goto(-46, 10) # 笔头初始位置t.pd() # 下笔t.setheading(90) # 画笔角度t.circle(5, 360)t.end_fill()# 右眼睛t.begin_fill()t.fillcolor("black")t.pu() # 提笔t.goto(46, 10) # 笔头初始位置t.pd() # 下笔t.setheading(-90) # 画笔角度t.circle(5, 360)t.end_fill()
# 画脸
def Face():# 脸蛋t.begin_fill()t.fillcolor("red")t.pu() # 提笔t.goto(-63, -10) # 笔头初始位置t.pd() # 下笔t.setheading(90) # 画笔角度t.circle(10, 360)t.end_fill()t.begin_fill()t.fillcolor("red")t.pu() # 提笔t.goto(63, -10) # 笔头初始位置t.pd() # 下笔t.setheading(-90) # 画笔角度t.circle(10, 360)t.end_fill()# 嘴巴t.pensize(2.2)t.pu() # 提笔t.goto(0, 0) # 笔头初始位置t.pd() # 下笔t.setheading(235) # 画笔角度right(5, 0.8, 0, 30)t.pu() # 提笔t.goto(0, 0) # 笔头初始位置t.pd() # 下笔t.setheading(305) # 画笔角度left(5, 0.8, 0, 30)
# 画手
def Hands():# 左手t.pensize(2)t.pu() # 提笔t.goto(-46, -100) # 笔头初始位置t.pd() # 下笔t.setheading(285) # 画笔角度right(0.4, 1.2, 0, 26)right(5, 0.35, 0, 26)right(0.3, 1.2, 0, 15)# 右手t.pu() # 提笔t.goto(46, -100) # 笔头初始位置t.pd() # 下笔t.setheading(255) # 画笔角度left(0.4, 1.2, 0, 26)left(5, 0.35, 0, 26)left(0.3, 1.2, 0, 15)
def Eyes_Close():# 左眼睛t.pu() # 提笔t.goto(-46, 12) # 笔头初始位置t.pd() # 下笔t.setheading(180) # 画笔角度t.forward(10)# 右眼睛t.pu() # 提笔t.goto(46, 12) # 笔头初始位置t.pd() # 下笔t.setheading(0) # 画笔角度t.forward(10)# 爱心
def Love(): # 画爱心函数,就是用turtle画爱心t.pensize(1)t.penup()t.color("pink")t.goto(-2.5, -100)t.pendown()t.begin_fill()t.fillcolor('pink')t.setheading(120)t.circle(20, 195)t.fd(20 * 2.4)t.lt(90)t.fd(20 * 2.4)t.circle(20, 195)t.end_fill()# 初始化
def Init():Ears()Tail()Foots()Body()Face()Hands()Eyes_Open()Love()
# 眨眼睛
def Close():Ears()Tail()Foots()Body()Face()Hands()Eyes_Close()
def Open():Ears()Tail()Foots()Body()Face()Hands()Eyes_Open()Love()def main():# 初始化皮卡丘Init()# 眨眼睛动画for i in range(30):if i % 2 == 0:t.reset()t.hideturtle()Close()t.update()time.sleep(0.3)else:t.reset()t.hideturtle()Open()t.update()time.sleep(1)
t.tracer(0)
main()
t.done()
程序分析
这是一个使用Python的turtle库绘制皮卡丘的程序。下面是对程序的分析:
1. 基础设置
首先,程序设置了画布的大小、背景颜色和窗口的标题等基础设置。
2. 画左偏曲线函数和右偏曲线函数
程序定义了两个函数:left()和right()用于画左偏和右偏的曲线。这两个函数分别接受四个参数:旋转角度、前进距离、增加的前进距离、曲线的段数。这两个函数使用turtle库提供的函数实现曲线的绘制。
3. 画耳朵、尾巴、脚和身体
程序定义了四个函数:Ears(),Tail(),Foots()和Body(),并使用这些函数画出了一个皮卡丘的基本轮廓。这些函数使用前面定义的left()和right()函数来实现曲线的绘制。
4. 画眼睛和嘴巴
程序定义了一个函数Face(),并在其中画出了皮卡丘的面部特征,包括眼睛和嘴巴等。
5. 画手
程序定义了一个函数Hands(),并使用left()和right()函数以及前进和旋转等基础操作函数来实现手的绘制。其中,左手和右手的绘制是对称的。
6. 眨眼动画
程序定义了Open()和Close()函数来实现眼睛的开闭动画效果。通过不断地调用这两个函数,程序实现了一个皮卡丘眨眼睛的动画效果。
7. 爱心
程序定义了一个函数Love(),使用turtle库提供的函数以及前进、旋转和绘制填充等基础操作来画出一个爱心。
8. 初始化和主函数
程序定义了一个Init()函数,用于调用前面定义的函数来完成皮卡丘的绘制。程序还定义了一个主函数main(),在其中使用Init()函数来初始化皮卡丘,并实现眨眼睛的动画效果。
总体来说,程序使用turtle库提供的函数和基础操作函数来绘制皮卡丘的各种部位,并通过调用函数和控制基础操作的顺序和参数,实现了一个可爱的皮卡丘绘图程序。
高级版
程序设计
from turtle import *
import turtle as tdef infoPrt():print('coordinate: ' + str(t.pos()))print('angle: ' + str(t.heading()))t.tracer(0)
t.pensize(3)
t.hideturtle()
t.colormode(255)
t.color("black")
t.setup(700, 650)
t.speed(1)
t.st()
#t.dot()
t.pu()
#t.goto(-150,100)
t.goto(-210,86)
t.pd()
infoPrt()
……(完整代码文末公众号免费获取哦)
程序分析
这是一个使用turtle库绘制皮卡丘的程序。下面是对程序的分析:
1. 基础设置
程序使用turtle库提供的函数和基础操作函数进行绘制。在开始绘制前,程序进行了一些基础设置。比如,设置画布大小、画笔的粗细和隐藏画笔等。
2. 绘制图形
程序通过turtle库提供的函数和基础操作函数,绘制出了皮卡丘的各个部分,包括头、身体、四肢以及面部等。在绘制过程中,程序使用了turtle库提供的绘制圆形、绘制直线、填充颜色等函数。
3. 绘制文字
程序使用turtle库提供的函数和基础操作函数,绘制了一个"Pika!"的文字,并将其放置在画布上方。程序使用了Turtle实例来进行绘制。
4. 绘制爱心
程序通过turtle库提供的函数和基础操作函数,绘制了一个粉色的爱心。在绘制过程中,程序使用了turtle库提供的绘制圆形、绘制直线、填充颜色等函数。
5. 总结
综上所述,这是一个使用turtle库绘制皮卡丘的程序。程序使用了turtle库提供的函数和基础操作函数,实现了各种绘图功能,绘制出了一个可爱的皮卡丘。程序还使用了Turtle实例来绘制文字,并在画布上方放置了一个粉色的爱心。该程序展示了Python和turtle库的强大功能,同时也向用户展示了皮卡丘的可爱形象。
豪华版
程序设计
import turtleturtle.setup(999, 777)
turtle.title('Pikachu')
pikachu = Pikachu()
pikachu.start()
turtle.penup()
turtle.goto(-444,200)
turtle.bgcolor("blue")
turtle.color("gold")
turtle.write("Pika !", move = True, align="left", font=("Comic Sans MS", 66, "bold"))
turtle.pensize(1)
turtle.penup()
turtle.color("skyblue")
turtle.goto(-2.5, -100)
turtle.pendown()
turtle.begin_fill()
turtle.fillcolor('skyblue')
turtle.setheading(120)
turtle.circle(30, 195)
turtle.fd(30 * 2.4)
turtle.lt(90)
turtle.fd(30 * 2.4)
turtle.circle(30, 195)
turtle.end_fill()
turtle.pendown()
turtle.mainloop()
……(完整代码文末公众号免费获取哦)
程序分析
这是一个使用turtle库绘制皮卡丘的程序,下面是对程序的分析:
1. 程序基础设置
程序在开始绘制之前,对画布进行了一些基础设置,包括设置画布大小、设置画笔粗细、速度、隐藏turtle绘制轨迹及拖拽事件。
2. 绘制各个部分
程序通过定义不同的方法,使用turtle库绘制了皮卡丘的各个部分,包括左右眼、嘴巴、红脸颊、左右耳朵等。在绘制过程中,程序使用了turtle库提供的绘制圆形、绘制直线、填充颜色等函数。
3. 绘制身体部分
程序通过定义一个body方法,使用turtle库绘制了皮卡丘的身体部分。在绘制过程中,程序使用了turtle库提供的绘制弧线、绘制曲线、绘制直线、填充颜色等函数,完成了身体的细节绘制。
4. 绘制帽子
绘制帽子的方法是cap,使用turtle库绘制帽子的细节,包括帽子的形状、红色部分以及帽檐。在绘制过程中,程序使用了turtle库提供的绘制圆形、绘制直线、填充颜色等函数。
5. 绘制文字和图案
程序使用turtle库提供的函数和基础操作函数,绘制了一个"Pika!"的文字,并使用turtle库提供的函数绘制了一个小图案。完成了绘制后,程序还使用了Turtle实例来绘制文字,并将其放置在画布上方。
6. 总结
综上所述,这是一个使用turtle库绘制皮卡丘的程序。程序使用了turtle库提供的函数和基础操作函数,实现了各种绘图功能,绘制出了一个可爱的皮卡丘。程序还使用了Turtle实例来绘制文字,并在画布上方放置了一个可爱的小图案。该程序展示了Python和turtle库的强大功能,并向用户展示了皮卡丘的可爱形象。
尾声
感谢支持吖!
相关文章:

Python皮卡丘
系列文章 序号文章目录直达链接1浪漫520表白代码https://want595.blog.csdn.net/article/details/1306668812满屏表白代码https://want595.blog.csdn.net/article/details/1297945183跳动的爱心https://want595.blog.csdn.net/article/details/1295031234漂浮爱心https://want…...
【数据结构与算法】三种简单排序算法,包括冒泡排序、选择排序、插入排序算法
冒泡排序算法 冒泡排序他是通过双重循环对每一个值进行比较,将小的值向后移动,以达到最终排序的结果,他的时间复杂度为O(n^2)。 /*** 冒泡排序* param arr*/public static void bubbleSort(int[] arr){int l arr.length;for (int i 0; i <…...

视频太大怎么压缩变小?超过1G的视频这样压缩
视频已经成为了我们日常生活中不可或缺的一部分,然而,很多时候,我们可能会遇到视频文件过大,无法在某些平台上传或保存的问题。那么,如何将过大的视频文件压缩变小呢? 下面就给大家分享三款实用的工具&…...

Edge 无法登录/同步问题【一招搞定】
目录 前言 一、打开 Edge 浏览器显示未同步,点击同步无效 二、Edge 登录报错 0x801901f4 或 0x80190001 解决方法 2.1 报错 0x801901f4 解决方法 2.1.0 Edge 登陆报错图示 2.1.1 添加 Edge 推荐的 DNS 地址 2.1.2 重新登录 Edge 账号成功 2.2 报错 0x801…...

ESP32-S3上手开发
1、搭建开发环境 首先搭建开发环境,这里采用了windows下集成开发环境ide进行开发,具体的安装方法:ESP-IDF安装配置 这里使用的乐鑫的esp32s3,N16R8 2、esp32s3模块 从上面图中可以看到,N16R8这里使用了外扩16M的fl…...

UE4和C++ 开发-编程基础记录(UE4+代码基础知识)
1、UE4基础元素 ①Actor 我们又见面了Actor,Actor是在一个关卡中持续存在的,通常他包含几个Actor组件。支持网络复制和多人游戏。 Actor不包含位置,方向。这些东西在Root Component中存储。对于UE3 中的Pawn也由PlayerCharacter继承了…...

【Unity】【VR】如何让Distance Grab抓取物品时限制物品的Rotation
【背景】 遇到这样的场景,希望抓取Canvas时,Canvas不会沿Z轴旋转。 【问题】 发现Freeze Canvas的Rigid Body没有用。 【分析】 应该是RigidBody的限制仅在物理互动下生效,抓取可能不属于物理互动(比如碰撞),所以不生效。 【思路】 还是得写脚本挂载在Interacta…...

为什么3ds max渲染效果图有噪点?点进来,CG Magic告诉您!
大家在使用3ds max渲染效果图时,可能渲染结果往往会出现的都是不真实,有小伙伴会问如何使3dmax渲染效果图真实呢? 不真实就算了,渲染过程中,会出现3Dmax渲染噪点多这类问题。 什么原因3ds max渲染效果图有噪点呢&a…...

Element UI怎么安装呢?
安装 :::warning 注意 后续演示将会在 Vue CLI 搭建的 Vue 项目上进行操作。如需要请查看 Vue CLI 安装 ::: 通过 YARN 命令安装 $ yarn add element-ui完整引入 代表一次性引入所有组件,比较省心省事,但是项目的打包体积也会跟着变大。 // main.js…...
redis批量删除命令
./redis-cli -h 127.0.0.1 -p 6379 -n 2 KEYS "170*:redisKeyStr" | xargs ./redis-cli -h 127.0.0.1 -p 6379 -n 2 DEL...

kubernetes环境 搭建
1、准备2台机器 2、安装docker环境(参考官网) 1、 sudo apt-get update sudo apt-get install ca-certificates curl gnupg2、 sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dea…...
TCP习题总结
1、在采用TCP连接的数据传输阶段,如果发送端的发送窗口值由1000变为2000,那么发送端在收到一个确认之前可以发送()。 A. 2000个TCP报文段 B. 2000B C. 1000B D. 1000 个 TCP 报文 这道题考察的是TCP的基本…...

华为发布LampSite X室内数字化创新解决方案,释放数字世界无限潜能
【阿联酋,迪拜,2023年10月11日】2023全球移动宽带论坛(Global MBB Forum 2022)期间,华为董事、ICT产品与解决方案总裁杨超斌重磅发布了全新一代5G室内数字化产品解决方案LampSite X系列,助力运营商打开商业…...
麒麟操作系统设置QT程序开机自启动有效方法
在麒麟操作系统上设置QT程序开机自启动的两种简单有效的方法。支持请点赞! 一、QT程序打包 1.设置环境变量 设置QT和linuxdeployqt的环境变量,已设置可忽略该步骤。 在/etc/profile文件末尾添加一下内容: export PATH/usr/local/Qt-5.15.…...

Python数组删除元素pop与remove对比
pop()和remove()函数都可以用来删除列表中的函数,pop()是按索引来删除的,remove()是按元素来删除的。 1、pop()默认删除列表中最后一个元素,而且会返回删除的元素。此时的时间复杂度为O(1) 下面的例子中,…...

【Java 进阶篇】Java Web 编写注册页面案例
当涉及到创建一个Java Web注册页面时,你将需要涵盖很多不同的主题,包括HTML、CSS、Java Servlet和数据库连接。在这篇文章中,我们将详细介绍每个步骤,以帮助你创建一个完整的注册页面。 1. 介绍 注册页面是许多Web应用程序的关键…...

7.5 SpringBoot 拦截器Interceptor实战 统一角色权限校验
前言 在【7.1】管理员图书录入和修改API,当时预告过:并没有写【校验是否是管理员】的逻辑,因为是通用逻辑,会单写一篇来细讲,那么今天就来安排! 角色权限校验,是保证接口安全必备的能力:有权限才可以操作!所以,一般对于这种通用逻辑,推荐不与主业务逻辑耦合,那么…...
【原创】ubuntu18修改IP地址
打开网络配置文件 sudo vi /etc/network/interfaces结果发现如下内容: # ifupdown has been replaced by netplan(5) on this system. See # /etc/netplan for current configuration. # To re-enable ifupdown on this system, you can run: # sudo apt inst…...
Vue-2.4sync修饰符
作用:可以实现子组件与父组件数据的双向绑定,简化代码 特点:prop属性名,可以自定义,非固定为value 场景:封装弹框类的基础组件,visible属性 true显示 false隐藏 本质:就是:属性名…...
【RealTek sdk-3.4.14b】RTL8197FH-VG+RTL8367+RTL8812F WiFi to LAN 和WiFi to WAN吞吐量
LAN <----------> 2.4G WiFi Throughput 天线频宽模式协议连接速率TX(Mbps)RX(Mbps)TX&RX(Mbps)2X240MHz802.11nTCP300Mbps2051922112X240MHz802.11nUDP300Mbps224234231 LAN <----------> 5G WiFi Throughput 天线频宽模式协议连接速率TX(Mbps)RX(Mbps)TX&…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...

USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...

Windows安装Miniconda
一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...

Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...