Python一级考试笔记

Python一级考试笔记【源源老师】

前置知识:(了解即可)

  1. Python常见的几种编程环境:IDLE(自带)、Visual Studio Code、Jupyter、pyCharm;

  2. python版本:python3 和 python2(版本之间互不兼容)

  3. IDLE的两种开发模式:交互模式、文件模式

  • 交互模式

  • 文件模式(最常见的Python文件后缀名:.py 或者.pyw)

  1. IDLE操作
命令解释
Ctrl+N新建文件(N:new)
Ctrl+S保存文件(S:save)
Ctrl+O打开文件(O:open)
F5运行程序
Tab代码缩进
#单行代码注释
‘’’ ‘’’多行代码注释
  1. python保留字

Python中保留字是指被编程语言所保留的特殊单词,这些单词有着特定的含义和功能,不能被用作变量名、函数名或类名等标识符。Python有35个保留字,比如:False,True,None,and,as,def,del,elif,else,for,while,from,if,import,in,is,not,or 等等。

01. input()输入函数

如果想让用户在键盘输入内容,可以使用 input() 函数;

说明语法
函数名input(object)
参数object–可以是空。
返回值类型字符串
# input()输入的内容,不管字面上是什么都是字符串类型
a = input()
print(a)
print(type(a))
  • 如果加上提示内容,可以很好的提示用户正确的输入;
# 有提示的输入
b = input("请输入一个数,1-9之间:")
print(b)

通过输入的两个数值进行加减运算,必须进行转换;

# 通过输入进行数值计算
c = int(input("请输入第一个数,1-9之间:"))
d = int(input("请输入第二个数,1-9之间:"))
print("%d+%d=%d"%(c, d, c+d))

02. print()输出函数

  • 简单的输出
# 注意1:括号和双引号(单双均可)必须是英文状态下的
print("Hello, Python")# 简单的数字输出
print(123)
  • 输出的内容可以多条数据,默认空格隔开显示,可以通过参数更改:
# 输出时,默认会以空格来隔开显示
print(123, 456, 789)

在这里插入图片描述

  • sep:用来间隔多个对象,比如这里我们用 “-” 来间隔
# 注意,sep参数的值需要通过双引号包含
print(123, 456, 789, sep="-")

在这里插入图片描述

  • 默认情况下一个print输出后会自动换行
print(123)
print(456)
  • 上面的例子等价于这样:
print(123, end="\n")
print(456)

在这里插入图片描述

  • end: 可以指定结尾用什么符号
# 我们指定输出123后,用 --- 作为结尾
print(123, end="---")
print(456)

在这里插入图片描述

print 总结:

说明语法
函数名print(objects, sep=’ ‘, end=’\n’)
参数objects --表示输出的对象。
sep – 用来间隔多个对象。
end – 用来设定以什么结尾。默认值是换行符 \n。
返回值

03. 变量

1. 变量的声明

# 声明一个变量
# 注意1:= 不是等于的意思,是 赋值 的意思
# 注意2:阅读代码从右边向左边阅读,意为:将数字123赋值给变量a
a = 123
# 输出a
print(a)
print(A) #Python中的英文是区分大小写的,大写的A和小写的a不是一种东西;这样写会报错
# a变量被替换
a = 456
print(a)

2. 命名的规则

  • 变量名可以包含字母、数字、下划线,但数字不能在变量名首位

    • abc(合法)、a123(合法)、_xyz(合法)、2b(不合法)
  • Python中的关键字(即保留字)无法作为变量名,比如:def、class,使用会直接报错

# 关键字错误命名
def = 123
class = 123
print(class) #报错啦# 中文命名
xiaoMing = 12
print(xiaoMing) #打印12

04.字符串

1.字符串写法

Python字符串支持使用单引号、双引号和三引号三种写法。

print('Hello World!!!')
print("Hello World!!!")
print('''Hello World!!!''')

2. 字符串的拼接

字符串的连接可以使用 +号 或者 逗号 ,具体如下:

# 字符串拼接,+号紧凑,逗号松散
print("我"+"和"+"你")
print("我" + "和" + "你")
print("我","和","你")# 变量同理
a = "我"
b = "你"
print(a + b)

结果:在这里插入图片描述

我们还可以使用 * 号来对字符串进行拼接组合,比如:

a = "*"*3
print(a) #结果:***

下面的例子中,如果我们想要输出字符串小明666,直接用加号拼接是不行的,这样会报错。

name = '小明'
num = 666
res = name + num
print(res)

使用"+"运算符连接字符串时,两边的操作数必须都是字符串类型。如果有其他类型的操作数,需要先将其转换为字符串类型,再进行拼接。正确的做法是:

name = '小明'
num = str(666)
res = name + num
print(type(res))  #<class 'str'>

3. 输出格式

格式符说明
%d格式化整数,会直接取整
%f格式化浮点数,可以设置保留的小数点
%s字符串
name = "小明"
age = 3.33
weight = 1.23456
print("我的名字叫%s,今年%d岁了,身高%.2f"%(name, age, weight)) #我的名字叫小明,今年3岁了,身高1.23
  • %10.2f:可以理解为10个占位符,不足的用空格占用;
  • %10s和%-10s:可以理解为占用10个位置,占用前面和占用后面的区别;

05. 布尔类型

1. 关系运算符

布尔类型的值,是专门用于各种表达式的判断,表达式的运算符如下:

名称关系运算符表达式返回值
大于>成立返回True,否则为False
小于<成立返回True,否则为False
等于==成立返回True,否则为False
大于等于>=成立返回True,否则为False
小于等于<=成立返回True,否则为False
不等于!=成立返回True,否则为False
# 表达式返回值
print(6 > 5) #True
print(6 > 7) #False
print(6 < 7) #True
print(6 < 5) #False
print(6 == 6) #True
print(6 == 7) #False
print(6 >= 7) #False
print(6 <= 7) #True
print(6 != 7) #True

2. 逻辑运算符

除了关系运算符之外,还有一种叫做逻辑运算符,具体如下:

名称逻辑运算符表达式返回值
andx and yx和y同时为True时,返回True,否则返回False
orx or yx和y只要其中之一为True,返回True,否则返回False
notnot xx为True时,结果为False,否则为True
print(0 and 1) #0
print(1 and 2) #2
print(0 or 1) #1
print(1 or 2) #1# 表达式
print(5 > 6 and 5 > 4) #False
print(7 > 6 and 5 > 4) #True
print(5 > 6 or 5 > 4) #True
print(5 > 6 or 5 < 4) #False
print(not 5 > 6) #True
print(not True) #False

06. 类型转换

1. 数据类型

类型名转换函数说明及示例
整型int()将合法的字符数值或浮点数转换成整数
字符串型str()将任意内容转换成字符串型
浮点型float()将合法的字符数值或整数转换成浮点数
布尔型bool()将任意内容转换成布尔型

为了判断一个变量或内容,可以采用**type()**函数;

说明语法
函数名type(object)
参数object --需要判断类型的内容
返回值返回一个<class ‘类型符号’>
# 使用type()获取四种类型
print(type(10))
print(type(10.15))
print(type("哈哈"))
print(type(True)) #注意:首字母需要大写
print(type(False)) #注意:首字母需要大写

结果:在这里插入图片描述

2. 类型转换

print(int("123"))
print(int(123.34))
print(float("123"))
print(bool(0))
print(bool(1))
print(type(str(123))) # 将整型转换成字符串时,无法直观的检查出,所以需要用type()判断;

结果:在这里插入图片描述

  • 以上类型转换,有一些条件:

    • 转换成整数时,包含字母或其它字符都不能转成整数,只有纯数字才可以
    • 浮点数同上;
    • 布尔型只能转换成True和False;

07. 四则运算

1. 算术运算符

虽说叫做四则运算,但其实运算符往往不止加减乘除这四种:

运算符号格式结果
+1 + 12
-2 - 11
*3 * 412
/6 / 23.0
整除//9 // 71
求余%10 % 82
**2**38

注意:

  • 在编程语法中乘法 x 用 ***** 号代替,除法 ÷/ 代替。
  • 除法 /保留小数的,而整除 //直接取整的。
  • 幂运算中:2**3,2为底数,3为指数,换算成乘法为:2 x 2 x 2 = 8。

运算符的优先顺序:

运算符说明Python运算符优先级顺序
小括号( )高——>低
乘方**
乘、除、取余、取整*、/、%、//
加减+、-
比较运算符==、!=、>、>=、<、<=
逻辑非not
逻辑与and
逻辑或or
#小括号
number = (3 + 2) * 2
print(number) #10#乘方
number = 3 * 2 ** 2
print(number)  # 12number = 8 / 2 ** 2
print(number)  # 2.0number = 7 % 2 ** 2
print(number)  # 3number = 7 // 2 ** 2
print(number)  # 1#乘法
number = 5 + 2 * 2
print(number)  # 9#除法
number = 5 - 2 / 2
print(number)  # 4.0#取余数
number = 5 - 2 % 2
print(number)  # 5#取整数
number = 5 + 2 // 2
print(number)  # 6#加减运算高于比较运算
print(5 < 3 + 2)  # False
print(5 == 3 + 3)  # False#比较运算高于not
print(not 6<=6) #False#not高于and
print(True and not False) #True#and高于or
print(True or True and False) #True

2. 变量自运算

  • 自运算,就是让变量本身的值累计运算,比如累加、累减等;
    • += 累加,a += 1,相当于a = a + 1;
    • -= 累减,a -= 1,相当于a = a -1;
    • 注意:Python不支持a++语法
# 累加
a = 1
a+=1
print(a) #2

08. 小海龟turtle库

1. turtle库入门

turtle,即:海龟;和随机库一样,是Python中一种 绘图工具 库,也叫 海龟库。默认是从原点(0,0)位置开始画图。

在这里插入图片描述

法名返回值说明方法简写
.forward(d)面朝当前方向前进d个距离,d单位是像素fd
.back(d)同上,后退bk
# 引入海龟库,并给海龟取别名为t
import turtle as t# 画一笔,向前(默认向右)画100步(单位:像素)
t.forward(100)

2. 角度的概念

在绘制图形时,有时需要转向,那么就需要调整前进箭头的指向(角度)即可

方法名方法说明
.left(a)左转a度,a的取值范围:0~360
.right(d)右转
import turtle as t
# 向前100步
t.forward(100)
# 拐个弯,向左拐90度
t.left(90)
# 再向前100步
t.forward(100)
# 拐个弯,向右拐90度
t.right(90)

结果:在这里插入图片描述

3. 设置箭头造型

为什么叫小海龟呢?因为箭头是可以设置为小海龟的,当然,默认是箭头

方法名方法说明
.shape()箭头的造型:arrow、turtle、circle、square、triangle、classic
.hideturtle()绘图结束后,隐藏箭头
.showturtle()显示海龟
import turtle as t
# 造型设置为海龟
t.shape('turtle')
t.forward(100)
t.hideturtle()

09. 绘制多种图形

1. 正方形

如图:在这里插入图片描述

分析:正方形四条边相等,拐弯的角度为:360 / 4 = 90°

import turtle as t
t.shape('turtle')
t.forward(100)
t.left(90) #左拐90度 
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)

2. 等边三角形

如图:在这里插入图片描述

分析:等边三角形三条边相等,内角和为180度,所以每一个内角为180/3=60度,外角为120度

import turtle as t
t.shape('turtle')
t.forward(100)
t.right(120) #右拐120度 
t.forward(100)
t.right(120)
t.forward(100)

3. 圆

圆的绘制,有自己单独的方法:.circle()

方法名方法说明
.circle(r,extent,steps)绘制一个圆,可以设置三个参数,其中extent,steps可以省略
上面参数:参数说明:
rr是半径,若r>0,左拐画圆;若r<0,右拐画圆
extent可选值,弧形的角度
steps可选值,多边形边数
  • 圆圈:在这里插入图片描述
import turtle as t
t.shape('turtle')
t.circle(100)
  • 半圆:在这里插入图片描述
import turtle as t
t.shape('turtle') 
t.circle(100,180)
  • 圆内三角形:在这里插入图片描述
import turtle as t
t.circle(50,steps=3)
  • 圆内多边形:在这里插入图片描述
import turtle as t
t.shape('turtle') 
t.circle(100,360,6)

思考:画一个小雪人,如图所示:在这里插入图片描述

方法一:

import turtle as t
t.shape('turtle')
t.circle(50)
t.circle(-100)

方法二:

import turtle as t
t.shape('turtle')
t.circle(50)
t.right(180) #海龟向右旋转180度【当然,向左旋转180度也可以】
t.circle(100)

4. 五角星

如图:在这里插入图片描述

分析:五角星的五个内角和为180度,所以每一个内角为180/5=36度,外角为144度

import turtle as t
t.shape('turtle') 
t.forward(100)
t.right(144) # 右拐144度
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)

10. 画笔设置

1. 画笔设置

海龟库绘制时的线条是可以设置的:包括颜色、粗细以及绘制速度等

方法名方法说明
.speed(s)设置绘图的速度:0或大于10表示瞬间绘制,1~10之间,1最慢,10最快
.color(p,q])p: 边框和画笔 q:填充颜色【如果只有p参数,则设置所有颜色,包括边框和填充颜色】
.pencolor©设置画笔颜色,绘制的线条以及笔头的轮廓部分
.pensize(s)设置画笔粗细,填入数字,最小值1
import turtle as t
t.shape('turtle')
# 设置颜色,red:边框和画笔 green:填充
t.color("red","green")
t.circle(100) #注意画笔这些要提前在画圆之前设置好

结果:在这里插入图片描述


我们再看一下,如果设置了t.pencolor,会出现什么情况:

import turtle as t
t.shape('turtle')
t.color("red","green")
# 设置画笔颜色
t.pencolor("yellow")
t.circle(100)

结果:黄色边框覆盖了红色边框,因为t.pencolor颜色设置是在t.color之后,如果他们交换位置,那么红色边框将会覆盖黄色边框。

在这里插入图片描述

除此之外,我们还可以设置画笔粗细和设置绘制速度

import turtle as t
t.shape('turtle')
t.color("red","green")
# 设置画笔粗细
t.pensize(20)
# 设置绘制速度
t.speed(8)
t.circle(100)

结果:在这里插入图片描述

2. 填充设置

如何在绘制好的封闭区域进行填充呢?比如一个圆

方法名方法说明
.fillcolor©设置填充的颜色
.begin_fill()在需要填充的封闭区域前设置
.end_fill()在需要填充的封闭区域后设置
import turtle as t
t.shape('turtle')
t.color("red","green")
t.begin_fill() # 开始填充
# t.fillcolor("orange") #可以在这里改变填充的颜色,将绿色改为橙色
t.circle(100)
t.end_fill()  # 结束填充

结果:在这里插入图片描述

3. 画布设置

画布:绘图的区域,我们可以设置它的大小和初始位置。

方法名方法说明
.screensize(width,height,bg)设置画布的大小【默认大小为(400,300)】
上面参数参数说明
width
height
bg背景颜色
import turtle
turtle.screensize(200,200,'green')

结果:在这里插入图片描述

11. 抬笔和落笔

1. 坐标的概念

默认情况下,海龟绘图在屏幕原点(0,0)位置开始。我们可以设置对应坐标让其在指定位置绘制.

方法名说明
.goto(x, y)到达指定坐标(x,y)
import turtle as t
t.circle(100)
# 将画笔在y轴上移50的位置
t.goto(0,50) 
t.circle(50)

结果:在这里插入图片描述

  • 虽然,我们绘制出了同心圆,但暴露了一个问题:当绘制第二个圆时,笔头划过路过的区域,并没有抬笔,此时,我们需要通过抬笔和落笔来解决。

2. 抬笔与落笔

每次当笔头要位移绘制时,我们需要将笔头抬起,然后再绘制处再落笔即可

方法名说明简写
.penup()设置画笔抬起,此时无法绘制内容.up()
.pendown()设置画笔落下,此时可以绘制内容.down()
import turtle as t
t.goto(0,0)
t.circle(100)
t.penup() #抬笔 
t.goto(0,50)
t.pendown() #落笔
t.circle(50)

结果:在这里插入图片描述


画图案例练习:

  • 案例演练1:

如图:在这里插入图片描述

分析:圆的半径:200/2 = 100

import turtle as t
t.circle(100)
t.penup()
t.goto(200,0)
t.pendown()
t.circle(100)

案例演练2:美国盾牌

如图:

在这里插入图片描述

分析:由外到里,逐个画出(6步)

  1. 先画最外层的红圈
  2. 白色圆圈
  3. 里面的红圈
  4. 蓝色圈
  5. 五角星
  6. 白色五边形
import turtle as t
t.speed(8)#最外层的红圈
t.penup()
t.goto(0,-200)
t.pendown()
t.color('red') #设置边框颜色和填充色
t.begin_fill() #开始填充
t.circle(200)
t.end_fill()#白色圈
t.penup()
t.goto(0,-150)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(150)
t.end_fill()#里面的红圈
t.penup()
t.goto(0,-100)
t.pendown()
t.color('red')
t.begin_fill() #开始填充
t.circle(100)
t.end_fill()#蓝色圈
t.penup()
t.goto(0,-50)
t.pendown()
t.color('blue')
t.begin_fill() #开始填充
t.circle(50)
t.end_fill()#五角星
t.penup()
t.goto(-40,10)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
for i in range(5):t.forward(80)t.right(144)   
t.end_fill()#白色五边形
t.penup()
t.goto(0,-20)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(16,steps=5)
t.end_fill()

12. 画点

方法名说明
.dot(r,c)绘制一个指定直径和颜色的圆点
上面参数参数说明
r直径
c(可省略)颜色

举例:

import turtle as t
t.dot(400,'green')
t.hideturtle() #隐藏箭头

结果:在这里插入图片描述


1. 美国盾牌

分析:用dot实现

import turtle as t
t.dot(400,'red')
t.dot(300,'white')
t.dot(200,'red')
t.dot(100,'blue')#五角星
t.penup()
t.goto(-40,10)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
for i in range(5):t.forward(80)t.right(144)   
t.end_fill()#白色五边形
t.penup()
t.goto(0,-20)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(16,steps=5)
t.end_fill()

结果:在这里插入图片描述

2. 画人脸在这里插入图片描述

import turtle as t#圆脸
t.penup()
t.goto(0,-200)
t.pendown()
t.circle(200)#左眼
t.penup()
t.goto(-100,50)
t.pendown()
t.dot(40,'blue')#右眼
t.penup()
t.goto(100,50)
t.pendown()
t.dot(40,'blue')#鼻子
t.penup()
t.goto(0,50)
t.pendown()
t.circle(-50,steps=3)#画嘴
t.penup()
t.goto(-150,-70)
t.pendown()
t.goto(0,-170)
t.goto(150,-70)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687517.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32学习笔记(七) —— DMA传输(MTM)

DMA&#xff0c;全称是Direct Memory Access&#xff08;直接内存访问&#xff09;。可以在存储器和存储器之间或者外设和存储器之间传输数据&#xff0c;而不需要CPU的干预&#xff0c;这样可以节省CPU的资源&#xff0c;提高工作效率。 1.功能框图 STM32F103RCT6有两个DMA控…

东方博宜 1057. 能被5整除且至少有一位数字是5的所有整数的个数

东方博宜 1057. 能被5整除且至少有一位数字是5的所有整数的个数。 思路&#xff1a; 1 首先输入n 2 用for循环遍历1-n中间的数 3 每一个数进行对5取余的运算&#xff0c;看是否能被5整除 4 在整除的基础上&#xff0c;看这个数的各个数位上是否有5&#xff0c;这一步将数对10取…

OpenGL学习——15.投光物_聚光

前情提要&#xff1a;本文代码源自Github上的学习文档“LearnOpenGL”&#xff0c;我仅在源码的基础上加上中文注释。本文章不以该学习文档做任何商业盈利活动&#xff0c;一切著作权归原作者所有&#xff0c;本文仅供学习交流&#xff0c;如有侵权&#xff0c;请联系我删除。L…

简单工厂模式-Simple Factory Pattern

原文地址:https://jaune162.blog/design-pattern/simple-factory-pattern/ 简介 简单工厂模式是一种非常常用的设计模式,但是并不属于GoF中的23种设计模式。简单设计模式有很多种实现方式。 本文我们就来讨论简单工厂模式的实现方式,以及如何借助Spring实现一个扩展性很好…

数字孪生与智慧城市:共筑未来城市的科技基石

一、引言 随着科技的飞速发展&#xff0c;数字孪生与智慧城市已成为未来城市建设的两大关键技术。数字孪生为城市提供了一个虚拟的数字镜像&#xff0c;使我们能全面、深入地了解城市的运行状态。而智慧城市则借助先进的信息通信技术&#xff0c;提升城市的智能化水平&#xf…

手写myscrapy(二)

我们看一下scrapy的系统架构设计方法和思路&#xff1a; 模块化设计&#xff1a; Scrapy采用模块化设计&#xff0c;将整个系统划分为多个独立的模块&#xff0c;包括引擎&#xff08;Engine&#xff09;、调度器&#xff08;Scheduler&#xff09;、下载器&#xff08;Downl…

PMP 考试的含金量怎么样?

PMP考试的含金量怎么样&#xff1f;培训机构又该如何选择&#xff1f; PMP认证只有在部分城市才能参与职称评定、没有挂靠这一说&#xff0c;毕竟认证体系不一样&#xff0c;但如果是从项目管理行业开始说起的话&#xff0c;其他证书都黯然失色&#xff0c;也只有PMP或同类证书…

【STM32 CubeMX】SPI W25Q64功能实现

文章目录 前言一、内部函数的实现1.1 选中和取消选中SPI Flash1.2 写使能函数1.3 获取读状态1.4 等待就绪状态 二、Flash读写函数实现2.1 读Flash ID2.2 擦除某个扇区2.3 写扇区2.4 读数据 三、测试代码总结 前言 SPI Flash 存储器在嵌入式系统中扮演着重要角色&#xff0c;它…

微服务调用组件FeignDubbo实战

RPC概述 思考&#xff1a; 微服务之间如何方便优雅的实现服务间的远程调用&#xff1f; RPC 全称是 Remote Procedure Call &#xff0c;即远程过程调用&#xff0c;其对应的是我们的本地调用。RPC 的目的是&#xff1a;让我们调用远程方法像调用本地方法一样。 //本地调用 R…

【大厂AI课学习笔记】【2.1 人工智能项目开发规划与目标】(3)数据准备初步

今天来学习数据准备。 一个AI项目要包括构建数据集、数据清理和数据融合、数据采集、特征工程、算法改进和其他步骤。 数据采集和数据清洗&#xff0c;也就是数据准备&#xff0c;要占到人工智能项目一半以上的工作量。 训练的数据量越大&#xff0c;模型越准确。 建立数据标…

使用redis-insight连接到服务器上的redis数据库

一、安装redis&#xff1a; 安装 Redis。你可以通过运行下面的命令来使用 yum 安装 Redis&#xff1a; sudo yum install redis 启动 Redis 服务。安装完成后&#xff0c;你可以通过运行下面的命令来启动 Redis 服务&#xff1a; sudo systemctl start redis 设置 Redis 服务…

定时器(基本定时器、通用定时器、高级定时器)

目录 一、基本定时器 二、通用定时器 三、高级定时器 一、基本定时器 1、作用&#xff1a;计时和计数。 二、通用定时器 1、除了有基本定时器的计时和计数功能外&#xff0c;主要有输入捕获和输出比较的功能&#xff0c;硬件主要由六大部分组成&#xff1a; ① 时钟源 ② 控…

美国突然致敬中本聪

作者&#xff1a;秦晋 有点看不懂美国的神操作。 2月16日&#xff0c;据《Bitcoin Magazine》报道&#xff0c;比特币的竞争对手、美国参议员伊丽莎白-沃伦对比特币的立场突然180度大转弯。由反对立场转为支持立场。让很多行业媒体出乎意料&#xff0c;甚至惊掉下巴。 报道称&a…

文件上传漏洞--Upload-labs--Pass01--前端绕过

一、前端绕过原理 通俗解释&#xff0c;我们将写有恶意代码的php后缀文件上传到网页&#xff0c;网页中的javascript代码会先对文件的后缀名进行检测&#xff0c;若检测到上传文件的后缀名为非法&#xff0c;则会进行alert警告。若想上传php后缀的文件&#xff0c;就要想办法对…

Html的<figure><figcaption>标签

Html的<figure><figcaption>标签 示例一: <figure><figcaption>figcaption001, fig标题1 </figcaption><figcaption>figcaption002, fig标题2 </figcaption><div style"width:calc(100px*2); height:calc(100px*2); back…

力扣经典题:环形链表的检测与返回

1.值得背的题 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode *detectCycle(struct ListNode *head) {struct ListNode*fasthead;struct ListNode*slowhead;while(fast!NULL&&fast->…

解锁Spring Boot中的设计模式—03.委派模式:探索【委派模式】的奥秘与应用实践!

委派模式 文章目录 委派模式1.简述**应用场景****优缺点****业务场景示例** 2.类图3.具体实现3.1.自定义注解3.2.定义抽象委派接口3.3.定义具体执行者3.4.定义委派者(统一管理委派任务)3.5.定义委派者管理类 4.测试4.1.controller层4.2.测试不同场景4.2.1.测试生产部门计算费用…

【GPT-2】论文解读:Language Models are Unsupervised Multitask Learners

文章目录 介绍zero-shot learning 零样本学习 方法数据Input Representation 结果 论文&#xff1a;Language Models are Unsupervised Multitask Learners 作者&#xff1a;Alec Radford, Jeff Wu, Rewon Child, D. Luan, Dario Amodei, I. Sutskever 时间&#xff1a;2019 介…

C++中.h与.hpp文件的差异问答

.h文件与.hpp文件在C编程中的区别主要基于约定和偏好&#xff0c;而不是C语言或其编译器强制执行的任何技术差异。以下是这些差异的概述&#xff1a; 约定&#xff1a; .h 文件&#xff1a;此扩展名源于C编程&#xff0c;表示头文件。它在C中常用于头文件&#xff0c;但不一定表…

四种mfc140u.dll丢失的解决方法,有效恢复mfc140u.dll丢失

mfc140u.dll文件的重要性&#xff0c;当系统中出现mfc140u.dll丢失的情况时&#xff0c;可能会导致一系列问题和影响。因此&#xff0c;保持mfc140u.dll文件的完整性对于系统和应用程序的稳定运行至关重要。一旦出现mfc140u.dll文件丢失的情况&#xff0c;我们需要采取有效的方…