三.python入门语法2

news2024/12/24 8:28:31

目录​​​​​​​

1.控制结构

1.1.顺序结构

1.2.选择结构

习题

1.3.循环结构

1.3.1. while语句

1.3.2.for语句

1.3.3.循环嵌套

1.4.break语句

1.5.continue语句

1.6.pass语句

习题


1.控制结构

在学习控制结构之前我们通过一个故事来简单的描述一下控制结构,先看一下这幅图。

控制结构1

小明每天放学回家必须要经过道路1,道路1上有十条马路,小明需要先顺序的走到分叉口,在面对道路2和道路3的时候他需要作出选择,当他选择道路3的时候是无法回到家的,当他选择道路2之后会走到操场,小明的爸爸规定小明在回家之前要围着操场跑3圈,因此当他围着操场循环跑了3圈之后,满足了要求才可以回到家中。

我们在编写程序解决问题的时候也通常会使用这三种结构,它们分别是顺序结构选择结果循环结构

下面我们来通过执行流程图来认识一下这三种结构。

控制结构2

1.1.顺序结构

顺序结构是三者里比较容易理解的,它按照编写完毕的语句的顺序依次执行。

一般来说就是我们所能看到的从上到下依次执行。

举个例子:

print('     ','登高','    ','李白')

print('风急天高猿啸哀,渚清沙白鸟飞回。')

print('无边落木萧萧下,不尽长江滚滚来。')

print('万里悲秋常作客,百年多病独登台。')

print('艰难苦恨繁霜鬓,潦倒新停浊酒杯。')

输出结果为:

1

2

3

4

5

     登高      李白

风急天高猿啸哀,渚清沙白鸟飞回。

无边落木萧萧下,不尽长江滚滚来。

万里悲秋常作客,百年多病独登台。

艰难苦恨繁霜鬓,潦倒新停浊酒杯。

1.2.选择结构

1. if语句

简单的if语句就是使用if关键字来构成选择语句,它的形式是:

1

2

 if 表达式:

     条件语句

表达式可以是一个变量或者布尔值,也可以是比较表达式逻辑表达式,如果表达式的结果为真就会执行条件语句,如果为假就跳出此判断往下继续运行。

当我们口渴的时候,我们会去喝水。通过流程图可以看出,此时会对是否口渴进行一个判断,如果口渴了则为True,则往下走执行喝水操作。

那么它的程序对应就是:

 you = str(input('是否口渴,回答是或其他任何回答:'))

 if you == '是':#如果回答‘是’,就会喝水。

     print('喝水')

 print('喝水')

我们还可以通过一条语句实现if语句,例如:

x = 1

 if X > 0 : print('X是大于0的')

但是并不推荐使用这种写法,这样会影响程序的可读性,所以我们在学习过程中尽量将代码写的整洁易懂。

2. if...else

当我们面临两种选择的时候就要使用到if...else结构,它的格式为:

1

2

3

4

if 表达式:

     条件语句1

 else:

     条件语句2

举个例子,当我们要判断某天是否要上班的时候,要对判断当天是否是工作日,如果是工作日,那么就要去上班,如果不是工作日,那么就不去上班。

流程图如下:

对应的程序为:

 judge = str(input("今天是否工作日(回答是或否):"))

 if judge == '是':

     print('需要去工作')

 else:

     print('不用去工作')

简单的if...else语句就是通过判断if中的语句是否满足而选择性的执行相关操作。

我们再通过一个简单的例子来强化一下if...else的学习。

 number = int(input())#先输入一个number

 if number >= 100:#判断number是否大于或等于100

     print('number是大于或等于100的')#满足条件执行此语句

 else:

     print('number小于100')#不满足if中的条件就执行此语句

需要注意一点是在引用else的时候else是不能单独使用的,else需要和if或while配套使用。

3. if...elif...elif...else语句

对于一个问题处于多种选择的状态下,也可以理解为判断条件有多个值的时候,if...else就不能满足我们的需求,这时候我们就要借用elif来解决问题。

elif是等同于else+if,它的使用可以帮助我们简化代码,不至于是使用过多的if...else语句。它的形式为:

1

2

3

4

5

6

7

8

 if 表达式1:

     条件语句1

 elif 表达式2:

     条件语句2

 elif 表达式3:

     条件语句3

 else:

     条件语句4

我们看一下它的执行流程图。

选择结构3

这种形式就是当第一种情况不满足的时候会进行第二种情况的判断,如果仍然不满足会进行第三种情况的判断,如果还不满足就直接False处理。

我们来通过一个问题来分析:

我们在旅游的时候总是离不开交通工具的选择。

1)我们可以首先进行判断高铁是否可以到达,如果满足就可以直接选择乘坐高铁。

2)如果不满足上条件可以判断是否可以乘坐火车到达,如果满足就可以选择乘坐火车。

3)如果不满足上条件可以判断是否可以乘坐飞机到达,如果满足就可以选择乘坐飞机,如果不能到达我们可以最后放弃出行或者更换旅游地点。

4)可以通过这个实例对应上流程图理解一下。

下面我们通过另外一个实例来再次学习:

关于体质指标如下:

1

2

3

4

5

6

7

体质指数(BMI)=体重(kg)÷身高*身高(m)

成人的BMI数值:

过轻:低于18.5

正常:18.5-23.9

过重:24-27

肥胖:28-32

严重肥胖, 高于32

我们可以通过一个人的体重和身高来判断他的体质指数是否合格。

代码如下:

height = float(input('Height(m):'))#输入身高

weight = float(input('Weight(kg):'))#输入体重

BMI = (weight) / ((height) ** 2)#BMI计算公式

if BMI < 18.5:

    print('过轻')

elif BMI <= 25:

    print('正常')

elif BMI <= 28:

    print('过重')

elif BMI <= 32:

    print('肥胖')

else:

    print('严重肥胖')

通过这个问题想必大家已经理解了elif的用法,在我们要分类讨论一个问题的时候使用这种方式可以更清晰的分析理解。

2. if语句的嵌套

关于if语句的嵌套,就是指满足一个if语句之后,在它的条件语句里再进行一个if语句的判断,这种形式的嵌套形式在筛选数据或者条件过滤的时候常用到。

它的形式为:

1

2

3

4

5

6

7

8

if 表达式1:

     if 表达式2:

         if 表达式3:

             条件语句3

         条件语句2

     条件语句1

 else:

     条件语句4

它对应的流程图:

不知道大家有没有试过使用程序去判断一个年份是不是闰年,下面我们来通过这样一个问题来了解一下if语句的嵌套。

代码如下:

year = int(input("输入一个年份: "))

if (year % 4) == 0:

    if (year % 100) == 0:

        if (year % 400) == 0:

            print(year,"是闰年")  # 是整百年但能被400整除的

        else:

            print(year,"不是闰年")

    else:

        print(year, "是闰年")  # 不是整百年但能被4整除的

else:

    print(year,"不是闰年")

输出结构:

1

2

3

4

输入一个年份: 2000

2000 是闰年

输入一个年份: 1999

1999 不是闰年

这个问题的解决就是通过条件语句的嵌套来筛选得到答案,具体看一下嵌套形式以及缩进格式。当年份满足能整除4这一条件的时候可以进行第一次筛选,当年份能被4整除的同时还能被100整除的时候可以进行第二次筛选,当年份既能被4整除也能被100整除还能被400整除的时候进行第三次筛选,从而得到最终的判断。

习题

1.题目 1008: [编程入门]成绩评定

grade = int(input())

if grade >= 90:
    print('A')
elif grade >= 80 and grade < 90:
    print('B')
elif grade >= 70 and grade < 80:
    print('C')
elif grade >= 60 and grade < 70:
    print('D')
else:
    print('E')

2.题目 1067: 二级C语言-分段函数

x=int(input())
 
if x<0:
    print('%.2f' % -x)
elif x<2 :
    print('%.2f' % (x+1)**0.5)
elif x<4:
    print('%.2f' % (x+2)**5)
elif x>=4:
    print('%.2f' % (2*x+5))

 3.题目 1481: 蓝桥杯算法提高VIP-剪刀石头布

#方法一:
a,b = map(int,input().split())
def judge(a,b):
    if a==b:
        return 0
    if (a==0 and b==2) or (a==1 and b==0) or (a==2 and b==1):
        return 1
    else:
        return -1
print(judge(a,b))

#方法二·:

from enum import Enum
class Result(Enum):
    WIN = 1
    LOST = -1
    DRAW = 0
a, b = map(int, input().strip().split())
if ((a==0 and b==2)or(a==1 and b==0)or(a==2 and b==1)):
    print(Result.WIN.value)
elif a==b:
    print(Result.DRAW.value)
else:
    print(Result.LOST.value)

#方法三:
import math
ans={
    "0 0":0,
    "1 1":0,
    "2 2":0,
    "0 1":-1,
    "1 2":-1,
    "2 0":-1,
    "1 0":1,
    "2 1":1,
    "0 2":1,
}
inp=input()
print(ans.get(inp))



4.题目 1002: [编程入门]三个数最大值

a, b, c = map(int, input().split())
if a > b and a > c:
    print(a)
if b > a and b > c:
    print(b)

if c > b and c > a:
    print(c)

5.题目1005:[编程入门]温度转换

f=float(input())
c=(f-32)*5/9
print("c="+"%.2f" % c)

 6.[编程入门]利润计算

I=int(input())

if I<=100000:
    w=I*0.1
elif I<=200000:
    w=10000+(I-100000)*0.075
elif I<=400000:
    w=10000+(I-200000)*0.05+7500
elif I<=600000:
    w=10000+(I-400000)*0.03+7500+10000
elif I<=1000000:
    w=10000+(I-600000)*0.015+7500+10000+6000
elif I>1000000:
    w=10000+(I-1000000)*0.01+7500+10000+6000+6000
print(int(w))

7. 模拟计算器

a,b,s=input().split()

a=int(a)
b=int(b)

if s=='+':
    print((a+b))
if s=='-':
    print((a-b))
if s=='*':
    print((a*b))
if s=='/':
    print((a//b))#求整数结果
if s=='%':
    print((a%b))



#看看别人的高级解,构造字典

def switch(x,y,symble):
    switch = {
        "+":x+y,
        "-":x-y,
        "*":x*y,
        "/":x/y,
        "%":x%y,
    }
    return switch.get(symble,"")
a,b,s=input().split()
a,b=int(a),int(b)
print(int(switch(a,b,s)))

1.3.循环结构

循环结构就是重复的执行一条或若干语句,在日常生活中我们可以看到很多这样的例子,像修铁路、盖房子这样的工程,大多来说都是不达到目标之前都在重复的去执行相同的操作,也就是在循环的坐同一件事情。

对于循环结构,主要分为两种类型:

       1)条件控制的循环

条件控制的循环是指采用一个表达式(可真可假)来控制循环的次数,我们用while语句来描述条件能控制的循环。

       2)计数控制的循环

计数控制的循环是根绝指定的次数来进行循环,我们用for语句来编写计算控制的循环。

1.3.1. while语句

while语句的概念:当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环。while语句的一般表达式为:

1

2

 while True:

     循环体

逻辑图如下图:

它的工作原理是判断条件为真时的时候就进入循环体循环一次,直到判断条件不成立,为Flase时退出循环。

下面我们仍然是通过实例来进行进一步学习。

小明的爸爸对他管教的很严格,他爸爸给他规定,每天晚上放学回到家中都需要写五道编程题,写完了才可以玩手机。

代码如下:

 count = 0

 while count < 5:

     count += 1

     if count <5:

         print('现在是第',count,'道,需要继续答题')

 print('小明已经完成',count,'道题目,可以玩手机了')

输出结果:

1

2

3

4

5

 现在是第 1 道,需要继续答题

 现在是第 2 道,需要继续答题

 现在是第 3 道,需要继续答题

 现在是第 4 道,需要继续答题

 小明已经完成 5 道题目,可以玩手机了

2. 无限循环(死循环)

对于大多数循环来说,循环体内一定要有结束循环的操作,意思就是循环内部存在让表达式的判断为假的语句,如果缺少了这样的语句,那么循环没有停下来的方法,那么就会形成无限循环,也就是死循环。

这一点我们用比喻来形容一下,假如有一辆汽车,它拥有无限的油量和电量,但是我们没有给他设置刹车和关闭功能,那么这辆车一旦启动,就会一直前行,直到产生一定后果,否则不会停下来。

举个例子来看一下:



number=10

while number<100:

   print(number)

对于上面这个语句,当你执行了之后就会发现,程序在一直执行,因为没有条件能够使得number大于或等于100,因此形成了无限循环。因此在写循环语句的时候一定要注意控制条件。


1.3.2.for语句

我们在上一节提到过计数控制的循环是根据绝对值的次数来进行循环,我们通过for语句来实现计数循环,那么在for循环中一定存在控制次数的对象。

1. for循环

for循环是通过次数的大小来进行循环,通常我们会使用遍历序列或枚举以及迭代来进行循环。

for循环的结构为:

1

2

 for 迭代变量 in 对象:

     循环体

迭代变量在我们每一次循环中保存根据变量得到的值,对象既是有序的序列,可以是字符串、元组、列表,也可以是无序的序列,例如字典。而循环体则为一条或若干条会被重复执行的语句。

下面是for循环可迭代的对象类型:

index = [1,2,3,4]#列表

string = 'abcdef'#字符串

sets = (1,2,3,4)#集合

for i in index:
    print(i)

for j in string:

    print(i)

for k in sets:

    print(i)

我们来看一下for循环语句的执行流程图:

先定义一个循环:

1

for in range(10)

从流程图中来分析一下这个循环。

首先我们分析这个循环的结构,i为迭代对象,range(10)为对象,在这里这个对象为一个0-9的序列,它等价于[0,1,2,3,4,5,6,7,8,9]。

当进入这个循环,首先会判断0-9是否遍历完,如果还未开始,则从第一个开始遍历,第一次是直接进入循环体,然后再次回到判断,判断是否还有值未进入循环,如果存在,就取这一项再次进入循环体,直到序列中的对象全部遍历完,然后退出循环。

下面我们通过一个实例来学习一下:

 index = 5

 for i in range(index):

     print("这是第",i,'项')

运行结果:

1

2

3

4

5

 这是第 0 

 这是第 1 

 这是第 2 

 这是第 3 

 这是第 4 

通过这个简单的例子我们简单的认识了for循环,它的原理是根据对象中因素去决定它需要迭代多少次,迭代完成后退出循环。

在for循环中中离不开range()函数的使用,下面来了解一下range()函数。

2. range()函数

range()函数是Python内置的函数,它被用于生成一系列连续的整数,它的语法格式为:

range(start, stop[, step])

start:计数的第一个值,是包含这个值,如果没有start的时候默认为0。

stop:计数的最后一位,不包含这个值,当range(1,3)的时候,等同于[1,2]是没有3这个数字的,在使用的时候一定要注意这一点。当range()中只有一个数字的时候,像range(3),对应的是[0,1,2]这样一个序列,关于这点大家多多使用就会体会到。

step:为步长,用来控制取数之间的间隔,如果省略则默认为1,如果为2,3等则步长为2,3等。步长为-1时为逆序。

通过下面例子来看了解一下range函数。

>>>  list(range(10))#范围0-9

 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 >>> list(range(1, 11))#范围1-10

 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

 >>> list(range(0, 30, 5))范围0-29,步长为5

 [0, 5, 10, 15, 20, 25]

 >>> list(range(0, 10, 3))范围0-9,步长为3

 [0, 3, 6, 9]

 >>> list(range(0, -10, -1))范围0-(-10),步长为-1

 [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]

 >>> list(range(0))

 []

 >>> list(range(1, 0))

 []

能够熟练的使用range()函数对我们之后的学习有很大的帮助,大家可以在自己的编辑器上多多尝试一下这个函数。


1.3.3.循环嵌套

嵌套循环和if语句的嵌套原理相似,就是在一个循环体内嵌套另外一个循环体。不同的是循环嵌套可以采用for-for嵌套、for-while嵌套、while-for嵌套、以及while-while嵌套四种形式。

1. for-for嵌套

它的形式为:

1

2

3

4

 for in range(n):

     for in range(m):

         循环体2

     循环体1

举个例子:

我们定义两个列表(一种存储数据的容器)。

list_first = [1,2,3,4,5,6,7,8,9]

list_second = [2,4,8,10,12,20]

我们要找到两个列表中相同的数据并打印出来。

代码如下:

 list_first = [1,2,3,4,5,6,7,8,9]

 list_second = [2,4,8,10,12,20]

 for i in list_first:

     for j in list_second:

         if i == j:

             print(i)

输出结果为:

1

2

3

 2

 4

 8

2. for-while嵌套 

它的形式为:

1

2

3

4

for 变量 in 对象:

    while 条件:

        循环体2

    循环体1

举个例子:

index = [1,32,77,121,150]

遍历输出index列表中的值,对于小于100的数,把它每次加上10,直到大于100后再输出。

代码如下:

index = [1,32,77,121]

 for i in index:#遍历index

     while i < 100:#如果i小于100

         i += 10#每次加上10

     print(i)

输出结果为:

1

2

3

4

 101

 102

 107

 121

3. while-while嵌套  

结构如下:

1

2

3

4

 while 条件:

     while 条件:

         循环体2

     循环体1

具体就不再举例,大家可以去在试着使用这种结构去解决问题。

4. while-for嵌套 

结构如下:

1

2

3

4

while 条件:

    while 条件:

        循环体2

    循环体1

5. 九九乘法表(作业1570)

在循环嵌套里有一比较经典的例子——打印九九乘法表。通过这个实例可以更清晰的看到双层循环嵌套的结构。

我们先来看一下代码:

1

2

3

4

for in range(1,10):#先遍历1~9

    for in range(1,i+1):#然后遍历1~i

        print(i,'*',j,'=',i * j,end='丨')#循环输出1~i * i的值

    print(end='\n')

再看一下输出结果:

1

2

3

4

5

6

7

8

9

1 * 1 = 1

2 * 1 = 22 * 2 = 4

3 * 1 = 33 * 2 = 63 * 3 = 9

4 * 1 = 44 * 2 = 84 * 3 = 124 * 4 = 16

5 * 1 = 55 * 2 = 105 * 3 = 155 * 4 = 205 * 5 = 25

6 * 1 = 66 * 2 = 126 * 3 = 186 * 4 = 246 * 5 = 306 * 6= 36

7 * 1 = 77 * 2 = 147 * 3 = 217 * 4 = 287 * 5 = 357 * 6= 427 * 7 = 49

8 * 1 = 88 * 2 = 168 * 3 = 248 * 4 = 328 * 5 = 408 * 6= 488 * 7 = 568 * 8 = 64

9 * 1 = 99 * 2 = 189 * 3 = 279 * 4 = 369 * 5 = 459 * 6= 549 * 7 = 639 * 8 = 729 * 9 = 81

运行图:

循环结构3

原理:先进行第一层循环,依次为1~9。第二层循环是在第一层循环的基础上再进行依次遍历,假如第一层循环现在是5,那么第二层循环找到1~5,然后分别用1~5去乘上5,那么就完成一次循环。我们在第1层循环中打印一个换行,可以使得代码更加明了。


1.4.break语句

我们在使用选择语句或者循环语句的时候,在满足部分条件时就要进行一定的跳转,在跳转的时候Python中有break、continue和return,本节讲一下break语句和continue语句,return语句会在后续章节中介绍。

1. break语句

break语句主要用于强制退出当前循环,它可以使用在whilefor的控制语句中。

打个比方,小明决定回到家之后要写十道编程题,但是写到第五道的时候累了不想写了,

这时候就要用到break来退出循环,就不会再写剩下的作业,也就不会在执行break后面的语句。

break语句大多会和if语句配套使用,跳出当前循环。来看一下break语句分别在for语句和while语句中的结构:

1

2

3

4

5

6

7

8

 for 变量 in 对象:#break语句在for语句中的用法

     if 条件语句:

         break

     循环语句

 while 条件语句:#break语句在while语句中的用法

     循环语句

     if 条件语句:

         break

下面我们通过两个实例了解一下break语句分别在for语句和while语句中的用法:

       1) for语句中代码如下:

for i in range(100):#循环本要进行一百次

     if i == 5:#break控制在当i=5的时候退出循环

         break

     print(i)#当i=5的时候并没有打印,因此最后一位为4

输出结果:

1

2

3

4

5

 0

 1

 2

 3

 4

       2) while语句中代码如下:

 number = 0#定义number为0

 while number != 10:#当number不为10的时候进入循环

     print(number)

     number += 1#number在循环中每次+1,会到number=10的时候执行else语句

     if number == 5:#当number=5的时候跳出循环

         break

 else:

     print(number,'等于10')#不会执行此语句

输出结果:

1

2

3

4

5

 0

 1

 2

 3

 4

break语句对于循环结构的控制还是很强大的,纵使再复杂的循环结构,只要当前结构中出现了break,那么余下语句就都会被终止。


1.5.continue语句

1. continue语句

相比于break语句,continue那就显得威慑力不足,它的用法是终止本次循环,跳过尚未执行的语句而进入下次循环,它和break一样可以用于for语句和while语句当中。结构与break也大致相似:

1

2

3

4

5

6

7

8

 for 变量 in 对象:#break语句在for语句中的用法

     if 条件语句:

         continue

     循环语句

 while 条件语句:#break语句在while语句中的用法

     循环语句

     if 条件语句:

         continue

通过实例来看一下continue的用法:

number = 0

 while number != 10:

     number += 1

     if number == 5:

         continue

     print(number)#在number=5的时候此项被跳过

 else:

     print('number=',number)

输出结果:

1

2

3

4

5

6

7

8

9

10

 1

 2

 3

 4

 6

 7

 8

 9

 10

 number= 10

看输出可以发现并没有5这一项,说明continue的存在使得number=5的那次循环的print被跳过。


1.6.pass语句

接下来讲一个pass语句,pass语句没有任何功能,它是一个空语句,它一般被用于充当占位的作用,就好比很多图书馆会有人帮忙拿书本去占位置,占到的位置一般来说不会有人去坐,直到被帮忙占位的那个人来了之后,占位的这本书就被这个人所取代,pass在 Python中就起到这样一个占位的作用。

举个例子来简单的说一下:

 for i in range(100):

     if i == 50:

         pass

可能我们会在i等于50的时候需要进行一些操作,但是当我们还没想到的时候,可以用pass先等待着,到我们想起之后再补充即可。


习题

1.1389程序员的表白

while 1:
    try:
        a = int(input())
        for i in range(a):
            print('*', end='')
            for j in range(a):
                print(' ', end='')
            print('*', end='\n')

        for k in range(a + 2):
            print('*', end='')
        print('\n')
    except:
        break

2.二级C语言-阶乘数列

def jiecheng(a):
    chengji = 1
    for i in range(a):
        chengji = chengji * (i + 1)
    return chengji

sum=0
for i in range(30):
    sum = jiecheng(i + 1)+sum
print("%.2e" % sum)#科学计数法
3.二级C语言-温度转换

def ctof(c):
    f=(c*9/5)+32
    int(f)
    return f

for i in range(-100,155,5):
    #print('c=',i,'->f=',int(ctof(i)))有空格
    print(f'c={i}->f={int(ctof(i))}')
4.蓝桥杯2014年第五届真题-分糖果

n=int(input())
m=list(map(int,input().split()))
ans=0 #老师补发糖果的个数
while m.count(m[0]) != n:  #这里的m[0]也可以是其他小朋友,我们只要确定这个m[0]的值的个数=n,就可以确定所有小朋友的糖果数量相同
    for i in range(n):   #先将所有的糖果都分出去一半
        m[i]=m[i]/2 
    temp=m[0]  #第一个小朋友一半的糖果数量
    for i in range(n-1):  #先将最后一个小朋友剔除,最后这个小朋友再加上第一个小朋友一半的糖果
        m[i]+=m[i+1]  #当前小朋友与后一个小朋友的糖果相加
    m[n-1]=temp+m[n-1]  #最后的一个小朋友的糖果数量等于第一个小朋友的一半和自己的一半
    for i in range(n):
        if m[i]%2 !=0:  #判断哪个小朋友手里的糖果是奇数
            ans+=1  #老师补发糖果+1
            m[i]+=1
 
print(ans)

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

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

相关文章

DAMODEL丹摩智算:LLama3.1部署与使用

文章目录 前言 一、LLaMA 3.1 的特点 二、LLaMA3.1的优势 三、LLaMA3.1部署流程 &#xff08;一&#xff09;创建实例 &#xff08;二&#xff09;通过JupyterLab登录实例 &#xff08;3&#xff09;部署LLaMA3.1 &#xff08;4&#xff09;使用教程 总结 前言 LLama3…

前端sm2国密加密时注意

如下方法&#xff1a; export function encrypt(str) {const sm2 require("sm-crypto").sm2;const cipherMode 1; // 1 - C1C3C2&#xff0c;0 - C1C2C3&#xff0c;默认为1//自定义密钥let publicKey "xxxxxxxx";//此处加密let a sm2.doEncrypt(str,…

【数字图像处理】简单粗暴介绍最近邻插值和双线性插值(附python实现)

目录 前言最近邻插值理论与公式部分代码部分优缺点 双线性插值理论与公式部分代码实现优缺点 双三次内插 前言 最近邻插值和双线性插值是两种常见的用于图像处理的方法&#xff0c;主要是用于实现图像的放大和缩小。本文中将以最为简单粗暴的方式介绍两种方法的原理&#xff0…

USB-CAN的使用说明

文章目录 前言一、USB-CAN模块二、产品特性三、引脚说明四、使用说明1.USB驱动安装2.CAN配置工具说明1. 菜单栏&#xff1a;2. 模式选择和收发数据显示&#xff1a;3. 数据发送4. 发送模式 五、AT指令设置参数六、硬件测试 前言 CAN总线协议&#xff1a;一种多主、串行通信协议…

淘客系统开发之卷轴模式系统源码功能分析

随着互联网技术的快速发展&#xff0c;电商行业不断创新&#xff0c;探索更加高效、有趣的用户参与机制。其中&#xff0c;卷轴模式作为一种新兴的商业模式&#xff0c;以其独特的积分兑换和任务系统&#xff0c;在淘客系统开发中得到了广泛应用。本文将从技术角度&#xff0c;…

汽车免拆诊断案例 | 2016 款宾利GT车仪表盘上的多个故障灯点亮

故障现象 一辆2016款宾利欧陆GT车&#xff0c;搭载CYCB发动机&#xff0c;累计行驶里程约为4.5万km。据车主反映&#xff0c;发动机偶尔无法起动&#xff0c;仪表盘上的多个故障灯点亮&#xff08;图1&#xff09;。此外&#xff0c;刮水器、电动车窗及空调等电器设备功能失效…

IDC 中国数据安全软件市场报告:顺应平台化趋势,打造综合性的数据安全平台

近期&#xff0c;IDC 发布了针对中国数据安全软件市场规模的预测报告——《中国数据安全软件市场预测&#xff0c;2024-2028》&#xff08;Doc# CHC51601524&#xff0c;2024年9月&#xff09;。该报告针对 2024-2028 年中国数据安全软件市场的规模、增长速度、驱动因素、阻碍因…

剧本杀全新体验:线上剧本杀发挥重要优势

剧本杀作为集游戏社交休闲为一体的消费方式&#xff0c;吸引了众多年轻人&#xff0c;让玩家在游戏中体验到各种角色&#xff0c;还能够满足社交需求。当下&#xff0c;剧本杀市场仍然在快速发展中&#xff01; 剧本杀市场创新 不过&#xff0c;在多年的发展中&#xff0c;剧…

智谱清影 - CogVideoX-2b-部署与使用

&#x1f351;个人主页&#xff1a;Jupiter. &#x1f680; 所属专栏&#xff1a;Linux从入门到进阶 欢迎大家点赞收藏评论&#x1f60a; 目录 体验地址&#xff1a;[丹摩DAMODEL官网](https://www.damodel.com/console/overview) CogVideoX 简介本篇将详细介绍使用丹摩服务器部…

C++20中头文件compare的使用

<compare>是C20中新增加的头文件&#xff0c;此头文件是language support库的一部分。它包括&#xff1a;concepts、classes、customization point objects、functions。 1.concepts&#xff1a;三向比较运算符<>&#xff0c;目的是简化比对对象的过程&#xff0c;…

ant design vue中带勾选表格报Tree missing follow keys: ‘undefined‘解决方法

1、这里一定要给columns和data-source设置key即可。 <div><a-table:row-selection"rowSelection":dataSource"tableList":columns"columns":scroll"{ x: 100% }":pagination"false":loading"loading"&g…

戴尔R750 H755N raid卡数据盘改直通模式

1、重启机器进入配置模式&#xff0c;重启后按F2进入bios模式

计算机网络(九) —— Tcp协议详解

目录 一&#xff0c;关于Tcp协议 二&#xff0c;Tcp报头字段解析 2.0 协议字段图示 2.1 两个老问题 2.2 16位窗口大小 2.3 32位序号和确认序号 2.4 6个标记位 三&#xff0c;Tcp保证可靠性策略 3.1 确认应答机制&#xff08;核心&#xff09; 3.2 超时重传机制 3.3 …

最新最详细的Mastercam安装包下载安装教程(保姆级)

正如大家所熟悉的&#xff0c;Mastercam是一款基于PC平台的CAD/CAM软件&#xff0c;集二维绘图、三维实体造型、曲面设计、体素拼合、数控编程、刀具路径摸拟及真实感摸拟等多种功能于一身。 Mastercam发展至今有许多个版本&#xff0c;目前来说常用的版本有Mastercam V91、20…

Windows同时配置两个jdk环境变量

项目场景&#xff1a; Windows同时配置两个jdk环境变量 解压版那么可以更改JAVA_HOME的值&#xff0c;来决定使用哪个版本。安装版可以两个版本同时使用。 操作步骤 1、配置环境变量 在系统环境变量中添加两个环境变量&#xff0c;根据使用需求更改JAVA_HOME的值 2、修改ja…

mariadb实现冷备份与恢复操作案例(物理冷备份,周期性备份)详解

文章目录 前置环境一、物理冷备份1.备份2.恢复检查结果 补充&#xff1a; 周期性恢复操作 前置环境 主机ipmariadb1192.168.10.11mariadb2192.168.10.12 mairadb1操作 安装mariadb yum -y install mariadb-server启动mariadb systemctl start mariadb这里只是演示备份与恢复…

数据结构不再难懂:带你轻松搞定排序算法

数据结构入门学习&#xff08;全是干货&#xff09;——排序算法&#xff08;下&#xff09; 1 快速排序 1.1 算法概述 快速排序采用分而治之的策略&#xff0c;与归并排序相似。其核心在于选择一个主元&#xff08;pivot&#xff09;作为分割点。 分而治之 主元(pivot)>…

【病毒分析】新兴TOP2勒索软件!存在中国受害者的BianLian勒索软件解密原理剖析

1. 概述 近期&#xff0c;笔者在浏览网络中威胁情报信息的时候&#xff0c;发现美国halcyon.ai公司于2024年3月25日发布了一篇《Ransomware on the Move: LockBit, BianLian, Medusa, Hunters International》报告&#xff0c;此报告对当前勒索软件团伙的实力进行了排名&#…

裸土检测算法实际应用、裸土覆盖检测算法、裸土检测算法

裸土检测算法主要用于环境保护、农业管理、城市规划和土地管理等领域&#xff0c;通过图像识别技术来检测和识别地表上的裸露土壤。这种技术可以帮助管理者实时监控裸土面积&#xff0c;及时采取措施&#xff0c;防止水土流失、环境污染和生态退化。 一、技术实现 裸土检测算…

【第二轮通知】第二届网络、通信与智能计算国际会议(NCIC 2024)

NCIC 2024|第二届网络、通信与智能计算国际会议 2024年11月22日-25日 中国 | 北京 www.icncic.org 重要日期 二轮截稿时间&#xff1a;2024年10月15日 注册截止时间&#xff1a;2024年11月10日 会议日期&#xff1a;2024年11月22日-25日 第二届网络、通信与智能计算国际会…