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)  # 12

number = 8 / 2 ** 2
print(number)  # 2.0

number = 7 % 2 ** 2
print(number)  # 3

number = 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)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

开源模型应用落地-工具使用篇-向量数据库(三)

一、前言 通过学习"开源模型应用落地"系列文章&#xff0c;我们成功地建立了一个完整可实施的AI交付流程。现在&#xff0c;我们要引入向量数据库&#xff0c;作为我们AI服务的二级缓存。本文将详细介绍如何使用Milvus Lite来为我们的AI服务部署一个前置缓存。 二、术…

论文阅读_用模型模拟记忆过程

英文名称: A generative model of memory construction and consolidation 中文名称: 记忆构建和巩固的生成模型 文章: https://www.nature.com/articles/s41562-023-01799-z 代码: https://github.com/ellie-as/generative-memory 作者: Eleanor Spens, Neil Burgess&#xff…

python+pytest自动化测试函数测试类测试方法的封装

前言 今天呢&#xff0c;笔者想和大家聊聊pythonpytest接口自动化中将代码进行封装&#xff0c;只有将测试代码进行封装&#xff0c;才能被测试框架识别执行。 例如单个接口的请求代码如下&#xff1a; 1 2 3 4 5 6 import requests headers { "user-agent":…

证明之三条看似显然实则需要证明的陈述

三条看似显然实则需要证明的陈述 “表面显然的数学定理&#xff1a;隐藏的证明之谜” 较高等的数学中&#xff0c;有一点让很多人感到费解&#xff1a;其中有一些定理看上去非常显然&#xff0c;简直无须证明。遇到这样的定理时&#xff0c;人们常常会问&#xff1a;“如果这…

海外媒体发稿:掌握这8个东南亚媒体发稿的技巧-华媒舍

在如今的数字化时代&#xff0c;媒体的地位越来越重要&#xff0c;尤其在东南亚地区。了解如何在关键时刻掌握东南亚媒体发稿的技巧是非常重要的。本文将介绍8个在东南亚地区重要的媒体发稿技巧&#xff0c;帮助您更好地传达信息。 1. 熟悉目标媒体 要掌握东南亚媒体发稿的技巧…

如何基于YAML设计接口自动化测试框架?看完秒会!

在设计自动化测试框架的时候&#xff0c;我们会经常将测试数据保存在外部的文件&#xff08;如Excel、YAML、CSV&#xff09;或者数据库中&#xff0c;实现脚本与数据解耦&#xff0c;方便后期维护。目前非常多的自动化测试框架采用通过Excel或者YAML文件直接编写测试用例&…

.NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库

一、效果 记录日志为文档 记录日志到数据库 二、添加NuGet包 三、log4net.config代码配置 <?xml version"1.0" encoding"utf-8" ?> <log4net><!-- Debug日志 --><appender name"RollingFileDebug" type"log4net…

抓包分析 TCP 协议

TCP 协议是在传输层中&#xff0c;一种面向连接的、可靠的、基于字节流的传输层通信协议。 环境准备 对接口测试工具进行分类&#xff0c;可以如下几类&#xff1a; 网络嗅探工具&#xff1a;tcpdump&#xff0c;wireshark 代理工具&#xff1a;fiddler&#xff0c;charles&…

论文阅读-EMS: History-Driven Mutation for Coverage-based Fuzzing(2022)模糊测试

一、背景 本文研究了基于覆盖率的模糊测试中的历史驱动变异技术。之前的研究主要采用自适应变异策略或集成约束求解技术来探索触发独特路径和崩溃的测试用例&#xff0c;但它们缺乏对模糊测试历史的细粒度重用&#xff0c;即它们在不同的模糊测试试验之间很大程度上未能正确利用…

【PyQt】在PyQt5的界面上集成matplotlib绘制的图像

文章目录 0 前期教程1 概述2 matplotlib2.1 库导入2.2 图片的各个部分解释2.3 代码风格2.4 后端 3 集成matplotlib图像到pyqt界面中3.1 使用到的模块3.2 理解Qt Designer中的“控件提升”3.3 界面与逻辑分离的思路3.4 扩展 0 前期教程 【PyQt】PyQt5进阶——串口上位机及实时数…

Android稳定性相关知识

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、相关方法论3.1 crash3.2 性能3.3 高…

一,STM32cubeMX配置FreeRTOS工程

从这篇文章开始&#xff0c;大家就进入到了FreeRTOS的学习之路。 那么&#xff0c;从这里开启学习的第一课如何使用cubeMX配置FreeRTOS工程 文章目录 前言一、使用 cubeMX 配置 FreeRTOS二、CMSIS 接口总结 前言 一、使用 cubeMX 配置 FreeRTOS 选择 stm32 芯片。 选择外部晶振…

【Linux】简单的网络计算器的实现(自定义协议,序列化,反序列化)

文章目录 前言一、 服务端1.ServerCal.cc&#xff08;服务器主文件&#xff09;2.ServerCal.hpp3.Sock.hpp(套接字封装)4.TcpServer.hpp(服务器)5.Protocol&#xff08;自定义协议&#xff09; 二、用户端1.ClientCal 三、Log.hpp&#xff08;日志&#xff09;四、makefile 前言…

洛谷 P8627 [蓝桥杯 2015 省 A] 饮料换购

参考代码and代码解读 #include <bits/stdc.h> using namespace std; int main() { int n; scanf("%d", &n); int dr;//drdrink; dr n;//把drink赋值于n; while (n > 2) {//剩余的总瓶盖数要大于二,才能换得下一瓶饮料; dr n…

C语言系列-带有副作用的宏参数#和##命名约定宏替换的规则

&#x1f308;个人主页: 会编辑的果子君 &#x1f4ab;个人格言:“成为自己未来的主人~” 目录 带有副作用的宏参数 宏替换的规则 宏函数的对比 #和## #运算符 ##运算符 命名约定 #undef 带有副作用的宏参数 当宏参数在宏的定义中出现超过一次的时候&#xff0c;如果…

树莓派登录方式

目录 1.串口登录树莓派 1.1 USB-TTL连接树莓派串口 1.2 修改系统配置&#xff0c;启用串口登录树莓派 1.3 启动树莓派 2.网络方式登录树莓派 2.1 使树莓派接入网络 2.2 网络SSH 方式登录树莓派 2.2.1 打开ssh功能&#xff0c; 输入命令&#xff1a; 1.串口登录树莓派 1…

MOS管故障排查(G极电阻篇)

我们经常看到&#xff0c;在电源电路中&#xff0c;功率MOS管的G极经常会串联一个小电阻&#xff0c;几欧姆到几十欧姆不等&#xff0c;那么这个电阻用什么作用呢&#xff1f; 如上图开关电源&#xff0c;G串联电阻R13这个电阻的作用有2个作用&#xff1a;限制G极电流&#x…

2024最新软件测试八股文(答案+文档)

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 1、B/S架构和C/S架构区别 B/S 只需要有操作系统和浏览器就行&a…

SD-WAN稳定性如何?

随着网络技术的不断发展&#xff0c;软件定义广域网&#xff08;SDWAN&#xff09;作为一种新兴的网络架构&#xff0c;受到了越来越多企业的青睐。然而&#xff0c;对于许多人来说&#xff0c;关于SDWAN最关键的问题之一就是它的稳定性。本文将探讨SDWAN的稳定性表现&#xff…

OpenCV每日函数 结构分析和形状描述符(9) ApproxPolyDP函数 拟合曲线

一、Douglas -Peucker 算法 也称为Ramer-Douglas-Peucker 算法或迭代端点拟合算法,是一种通过减少点数来平滑折线(由线性线段组成的线)的算法。简化曲线应保留原始曲线的粗略形状,但仅包含定义原始曲线的点的子集。 粗化程度由单个参数 ε 控制,该参数定义原始点和简化曲线…