学习测试10-1自动化 python基础

下载python 要配置环境变量
进入Python的官方下载页面
http://www.python.org/download/
安装PyCharm工具,网上可以下载,很多资源,也有免安装的版本,在网上找激活码

链接: https://pan.baidu.com/s/1Y6S_n3KbnjOdE9EDZ5nixw?pwd=d2m7 提取码: d2m7
复制这段内容后打开百度网盘手机App,操作更方便哦

PyCharm中文插件

在这里插入图片描述

一、基础语法

1、注释

Python中单行注释以 # 开头
多行注释可以用多个 # 号,还有 ‘’’ ‘’’

2、行与缩进

python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。

3、变量

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名
等号(=)运算符右边是存储在变量中的值

二、基本数据类型

Python 中有5个标准数据类型:String(字符串)、Number(数字)、List容器、Bool(布尔)、None(空值)

容器又可分为List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)四种。

其中String(字符串)、Number(数字)、Tuple(元组)、Bool(布尔)、None(空值)为不可变数据;List(列表)、Dictionary(字典)、Set(集合)为可变数据。

type(str) 可以查看数据类型

(一)、字符串(String)

字符串就是表示一串字符,字符可以是中文,英文或者数字,或者混合的文本。
Python中的字符串用英文状态下的单引号 ’或双引号 " 括起来。

1、用+连接字符串
在这里插入图片描述

2、用%格式化字符串,基本用法是将值插入到%s占位符的字符串中。%s,表示格式化一个对象为字符。
在这里插入图片描述

(二)数字(Number)

数字类型分为整数型和浮点型

整型:像11、60这种整数

浮点型:像3.14、2.50这种带小数的

# 逻辑运算符
x = 10
y = 2
print(x * y, x + y, x - y, x / y, x % y)

在这里插入图片描述


数据强制转换

在这里插入图片描述


索引、下标

在这里插入图片描述

切片

在这里插入图片描述

print(str1[:])    # 取所有的
print(str1[3:])    # 可以单个省略,从第三个开始取
print(str1[-3:6])    # 可以左右同时取
步长

在这里插入图片描述

str1='容器是用来存放数据的,是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取'
print(str1[0:15:1])  # 一步一取
print(str1[0:20:2])  # 两步一取
print(str1[20:0:-2])  # 倒着两步一取
print(str1[20::-2])  # 倒着两步一取

在这里插入图片描述
练习

# 定义变量passage,赋值为字符串,内容如下: '123Process finished with exit& code 0%'
passage='123Process finished with exit& code 0%'
# 1)倒着输出打印该字符串
print(passage[::-1])
# 2)截取'ss finished w’
print(passage[8:21])
# 3)截取字符串的'exit'(使用正序和倒序两种)
print(passage[25:29])
print(passage[-13:-9:])
# 5)截取后7位
print(passage[-7::])
# 6)截取第4位到第12位
print(passage[3:11:])
print(passage[-35:-28:])

字符串方法
1 index
str1='字符串就是表示一串字符,字符可以是中文,英文或者数字,或者混合的文本'
print(str1.index('中文'))  # 到中字
print(str1.index('文'))  # 到第一个文字
print(str1.index('文', 20, 30))  # 从20开始取,30结束,取第一个‘文’字

在这里插入图片描述

2 count

在这里插入图片描述

3 大小写转换
str2 = 'd hjkjcdfu ciDGHSKd cJdfs gjcHUIH'
print(str2.lower())  # 变小写
print(str2.upper())   # 变大写
print(str2.swapcase())  # 大小写互换
print(str2.title())  # 首字母大写

在这里插入图片描述

4 切分字符 split
str3 = 'my name is username , you are ok?'print(str3.split())  # 默认空格切割
print(str3.split('m'))  # 以m切割 m不显示
print(str3.split('m',1))  # 以m割  , 指定次数只切一次

在这里插入图片描述

5 判断是否是纯数字组成
str5 = 'my name is 1234'
str6 = '1234'
print(str5.isdigit())  
print(str6.isdigit())

在这里插入图片描述

6 统计字符串长度的函数 len(str)

在这里插入图片描述

7 运算符 in not in

在这里插入图片描述

8 字符串强制转换
a = 29.0
print(type(a))
str8 = str(a)
print(type(str8))

在这里插入图片描述

9 字符串格式化输出
name1 = '有钱'
name2 = '辛苦'
print('我们%s,但是%s' %(name1, name2))   # 字符串拼接,占位符 老方法name1 = '有钱'
name2 = '辛苦'
print(f'我们{name1},但是{name2}')   # 格式化输出

在这里插入图片描述


(三)容器(List)

容器是用来存放数据的,是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中。容器是一种可以包含其他类型对象(如列表、元组、字典等)作为元素的对象

以下面的病例数据为例,来看容器的各项操作:

列表(list)

列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号[]之间、用逗号分隔开的元素列表。具体操作如下:

lis = [1, 1.23, "apple", [1, 2, '上海', [8, 9, "apple", "orange"]], (1, 2), {'x': 'y', 'z': 1}]
print(lis[4][1])   # 取 2lis[1] = 7.21
print(lis)  # 修改单个列表值lis[:2:] = '改了值'
print(lis)  # 修改多个列表值,会被拆分
lis[:2] = ['改了值']   # 修改多个列表值,以列表[]的方式就是一个整体
print(lis)  
lis[:3] = ['改了值', 'www']      # 修改多个列表值,以列表的方式就是一个整体
print(lis)

在这里插入图片描述

print(lis[::-2])
lis[::-2] = ['改了值',23456,'ddddd']
print(lis)  # 按 步长 切的话,需要替换全部切下来的元素,数量得相同

在这里插入图片描述

列表常用方法
增加元素
list1 = [123, 'dsdsff', 'dssfeewwrwr', 8.94]
list1.append('eeeee')  # 末尾追加元素
print(list1)list1.insert(2,'eeeee')
print(list1)  # 按索引加元素list2 = [1,4,2.3,'rrrr']
list1.extend(list2)   # 添加列表	
print(list1)

在这里插入图片描述


删除元素
list1 = [123, 'dsdsff', 'dssfeewwrwr', 8.94,7,1067]
list1.pop(-2)    # 按索引删
print(list1)list1.remove(123)
print(list1)      # 按内容删del list1[2]     # 按索引删
print(list1) 

在这里插入图片描述

元素方法
list1 = [123, 'dsdsff', 'dssfeewwrwr', 8.94, 7, 1067, 'dsdsff']
print(list1.count('d'))  # 不完整元素无用
print(list1.count('dsdsff'))  # 对元素统计出现次数	print(list1.index('dsdsff', 2))  # 按内容查索引,可以添加次数list1.reverse()  # 反转列表
print(list1)list1.clear()   # 请空
print(list1)

在这里插入图片描述

排序
list1 = [1, 45, 7.3, 694, 909, 12.7]list1.sort()  # 永久排序
print(list1)print(sorted(list1))   # 临时排序
print(list1)  # 列表本质顺序没变	

在这里插入图片描述

函数
print(len(list1))
print(max(list1))print(min(list1))
print(sum(list1))

在这里插入图片描述

list强制转换列表在这里插入图片描述

2、元祖(Tuple)

元组的元素不能修改。元组写在小括号()里,元素之间用逗号隔开。

元组是不可变类型,不支持增删改,只能查询

元组中只包含一个元素时,需要在元素后面添加逗号 , ,否则括号会被当作运算符使用:

在这里插入图片描述

常用方法和函数与列表一样
增
变量.append(元素)  在列表中追加元素
变量.insert(索引,元素) 在指定的位置添加元素
变量.extend(列表)  在列表中追加一个列表删除
变量.pop(索引)   通过指定索引删除,如果没有指定索引,默认删除最后一个
变量.remove(元素) 删除指定元素
del  变量[索引]   变量[切片]  变量[步长]变量.count(元素) 元素出现的次数
变量.index(元素,起始位,截止位) 元素的索引
变量.clear()    清空列表
变量.reverse()  翻转列表  [::-1]排序
变量.sort()     永久排序
sorted(变量)    临时排序常用函数
len(变量)    统计元素长度
sum(变量)     求和
max(变量)      求最大值
min(变量)      求最小值

3、字典(Dictionary)

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号:分割,每个对之间用逗号(,)分割,整个字典包括在花括号 { } 中 ,键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,不能重复的,如字符串,数字。

增删改方法
a = {'name': 'user', 'age': 22, 'addr': '苏州'}a['name'] = 'long'    # 修改键的值
print(a)a['ph'] = 16587392789  # 加的键没有的话,默认增加一个键值对
print(a)del a['ph']     # 删除
a.pop('addr')    # 删除
print(a)

在这里插入图片描述

常用方法
dic1 = {'name': 'user', 'age': 22, 'addr': '苏州'}k=dic1.keys()    # 返回所有的键
print(k)v=dic1.values() # 返回所有的值
print(v)i = dic1.items()    # 返回键值对
print(i)

在这里插入图片描述

4、集合(Set)

集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用set() 而不是 { } ,因为 { } 是用来创建一个空字典。

集合的修改元素,需要将要修改的元素删除然后再增加新元素

se = {'name','user','age',22,'addr','苏州'}   # 集合
se1 = set()   # 空集合
se2 = {1,4,6,1,7,343,4}   # 集合元素不能重复,重复不显示
print(se2)

在这里插入图片描述

增删改等方法
se = {'name', 'user', 'age', 22, 'addr', '苏州'}se.add('phone')   # 增加元素
print(se)se.pop()  # 随机删除
print(se)se.remove(22)   # 指定元素删除
print(se)se.discard('name')    # 错误保护机制   删除不存在的元素不报错
print(se)se.clear()   # 清空
print(se)

在这里插入图片描述

运算符
a = {'name', 'user', 'age', 22, 18, 40}
b = {27, 22, 45}
print(a - b)  # 去除相同的值print(a | b)  # 合并 去除重复print(a & b)  # 返回两个集合里相同的值print(a ^ b)  # 返回两个集合里不同的值

# 综合练习
list_test = [{'t1': [1, 2, 3], 't2': ('good', 'python')}, [233, True, ('java', 'fast')], 'apache']
# 1)往t1的值中追加一个数字4
list_test[0]['t1'].append(4)
print(list_test)
# 2)取出t2中的python,赋值给变量txt_01
txt_01 = list_test[0]['t2'][1]
print(txt_01)
# 3)定义一个变量num_02 = 2
num_02 = 2
# 格式化输出  I like python,今天是学习python的第2天
print(f'I like python,今天是学习python的第{num_02}天')
# 4)取出java中的ava
a = list_test[1]
b = a[2][0]
print(b[1::])
# 5)在233所在的列表中第2位插入一个元素  'China'
list_test[1].insert(1, 'china')
print(list_test)
# 6)修改True的值为字典中't1'对应的值
t1 = list_test[0]['t1']
list_test[1][2] = t1
print(list_test)
(四)、布尔类型

布尔值只有两个:True 和 False

布尔值加上比较运算符,与两边的数据一起构成了布尔表达式,返回布尔值。所谓布尔表达式,其实就是条件测试的别名。

注:比较运算符

等于 == 大于等于>=小于等于<= 不等于 !=大于 > 小于 <
(五)、空值None

与SQL中null是一个意思,表示该值是一个空对象。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。可以将None赋值给任何变量,也可以给None值变量赋值。


四、条件判断

Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。
Python 中用elif代替了else if,所以if语句的关键字为:if – elif – else。一般形式如下所示:

注意:

1、每个条件后面要使用冒号:,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在Python中没有switch – case语句。

常见的边界条件分为两种

1.值比较:即>(大于),<(小于),>=(大于等于),<=(小于等于),!=(不等于),==(等于)
2.逻辑比较:and(并且),or(或者),not(不是)
3、多条件判断:当有多个条件时,如何根据条件进行判断
a = input('请输入成绩:')
print(type(a))    # 类型是stra = int(input('请输入成绩:'))   # 强制转换类型为int
print(a)
if a > 60:print("及格")
else:print('下次努力')# ---------------------------------------
t = input('请输入天气:')
if t == '晴天':print("去夏游")
else:if t == '阴天':print('去图书馆')else:if t == '雨天':print('睡觉')else:print('输入的不正确')
逻辑运算符 and or not

# 4、身份证有效性校验
# if 语句判断练习:
# 1、提示用户输入身份证号
# 2、判断用户输入的身份证长度是不是18位,前17位是数字
# 最后一位可以是字母x和X或者数字
# ---如果不是,提示"输入错误"
# ---如果是,读取身份证里的出生年月日,并赋给birthday这个变量
card = input('请输入你的身份证号,18位:')if len(card) == 18 and card[:17].isdigit():# if card[-1::] == 'X' or card[-1::] == 'x' or card[-1::].isdigit():if card[-1::] in ['X', 'x'] or card[-1::].isdigit():birthday = card[6:14]print('宁的生日是' + birthday)else:print("2号码输入错误,请检查")
else:print("号码输入错误,请检查")# atm取款题目
# 模拟ATM取款机   设置用户余额为5000元
# 1、提示用户输入银行卡密码 密码正确,进入下一个判断,密码错误,提示输入有误
# 2、提示用户选择需要办理的业务(存款/取款)
# 如果选择存款业务,提示让用户输如存款金额,最后显示存款后余额
# 如果选择取款业务
# 判断取款金额是否超过了余额
# 超过了: 告知用户余额不足
# 未超过: 提示取款成功,请取走现金,并显示当前剩余余额money = 5000
pad = input('请输入银行卡密码(六位数字):')
if len(pad) == 6 and pad.isdigit():if pad == '123456':fw = int(input("请选择1 存款服务,2 取款服务:"))if fw == 1:print(f"您的余额是{money}")cun = int(input("请输入存款金额:"))money = money + cunprint(f"存款成功,您的余额是{money}")else:if fw == 2:print(f"您的余额是{money}")qu = int(input("请输入取款金额:"))if money >= qu:money = money - quprint(f'取款成功,请取走现金,当前剩余余额为{money}')else:print('余额不足')else:print("服务输入错误")else:print("密码输入错误,请重新输入")
else:print("密码格式错误")

五、循环

循环就是把容器中每一个的数据都按照特定的规则进行重复处理数据的方式。Python 中的循环语句有 for 和 while两种。这里主要介绍for循环。

for循环的一般格式如下:

for i in 容器: 要做的事情for i in 序列 :for i in 字符串 :    会从第一个到最后一个,来个遍for i in 字典    :for i in 元组    :for i in 列表 :break:退出循环
continue:跳出本次循环,后面的代码不执行,进行下次循环while 条件:循环体
else :非循环体
for i in [{1, 4, 6.7}, 3, 67, 'll']:print(i)for i in [3, 67, 'll']:print(i)for i in (3, 67, 'll'):print(i)for i in 'java':print(i)dic={'name':'java','user':'ww','add':'sh'}
for i in dic.keys():print(i)
for i in dic.values():print(i)

在这里插入图片描述

# for i in range(起始位,截止位,步长):
for i in range(10):print(i)# ----------------练习--------------
# ['笔记本一台','冰箱一台','奔驰一辆','谢谢惠顾'...]
# 用户进行积分抽奖 20积分抽一次
# 如果未中奖,告知用户没有中奖,还剩?积分,还能抽多少次
# 如果抽中,告知用户抽到了什么,还剩多少积分,还能抽多少次
# 抽完一次之后,如果积分足够,要询问用户,是否继续抽奖
# ---是 继续抽
# ---否 结束抽奖
# ----- for ---------
list1 = ['笔记本一台', '冰箱一台', '奔驰一辆', '谢谢惠顾', '中性笔', '', '', '', '', '', '']
jf = float(input('您有多少积分:'))
n = jf / 20
for i in list1:if jf >= 20:random_value = random.choice(list1)if random_value in ['', '谢谢惠顾']:jf = jf - 20n = n - 1print(f'您未中奖,还剩{jf}点积分,还能抽{n}次')h = input("是否要抽奖:")if h == '是':print('开始抽奖!')continueelse:if h == '否':print(f'您还剩{jf}点积分,还能抽{n}次')breakelse:print('回答错误,跳出系统')breakelse:jf = jf - 20n = jf // 20print(f'您中了{random_value},还剩{jf}点积分,还能抽{n}次')h = input("是否还要抽奖:")if h == '是':print('开始抽奖!')continueelse:if h == '否':print(f'您还剩{jf}点积分,还能抽{n}次')breakelse:print('回答错误,跳出系统')breakelse:break
print("积分不足")
# ---------------------while------------------------
jf = float(input('您有多少积分:'))
n = jf // 20
while n >= 1:if jf >= 20:random_value = random.choice(list1)if random_value in ['', '谢谢惠顾']:jf = jf - 20n = n - 1print(f'您未中奖,还剩{jf}点积分,还能抽{n}次')h = input("是否要抽奖:")if h == '是':print('开始抽奖!')continueelse:if h == '否':print(f'您还剩{jf}点积分,还能抽{n}次')breakelse:print('回答错误,跳出系统')breakelse:jf = jf - 20n = jf // 20print(f'您中了{random_value},还剩{jf}点积分,还能抽{n}次')h = input("是否还要抽奖:")if h == '是':print('开始抽奖!')continueelse:if h == '否':print(f'您还剩{jf}点积分,还能抽{n}次')breakelse:print('回答错误,跳出系统')breakelse:break
print("积分不足")

五、函数

函数是根据一定的规则进行运算,可以重复使用的代码段。函数的3个功能为:实现特定功能、输入数据、输出结果。大部分时候我们只需要调用系统自带的函数或者第三方包里的函数即可,有的时候在处理复杂数据时,需要自定义函数。

函数一般格式如下:

def 函数名称(参数1,参数2):函数体Return 输出
def s(a, b):return a + b
def p():print('计算')c = 4 * s(1, 4)
p()
print(c)
当函数参数为不可变数据类型(字符串、数字,元祖,布尔,空值None),如果我们定义的是改变列表的值,传递的只是该数据类型的值,不会改变数据结果。
当函数参数为可变数据类型(列表、集合、字典)如果我们定义的是改变列表的值,传递的是该变量的引用地址,会改变数据结果。
变量作用域

Python的作用域一共有2种:全局作用域,局部作用域。

定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。 
局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。

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

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

相关文章

CentOS 7 yum官方源失效

问题 2024年7月&#xff0c;官方对centos 7停止了维护&#xff0c;yum的源网址mirror.centos.org也已经无法访问。 在此情况下&#xff0c;无法正常使用yum进行安装和更新工具。 在尝试了更换阿里源之后&#xff0c;仍然有部分工具库无法访问。 通用解决方案 1. 打开/etc/y…

AWS Certified Developer Associate备考笔记

AWS Certified Developer Associate备考笔记 缓慢更新中&#xff0c;如果你也正在关注该考试&#xff0c;请点赞后评论感兴趣的章节&#xff0c;可加快我的更新速度 &#x1f603; 文章目录 AWS Certified Developer Associate备考笔记一、IAM二、EC2三、EC2 Instance Storage…

【WordPress插件】Media folder汉化版-媒体文件夹-v5.1.2

WP媒体文件夹(WP Media folder)是一个真正的节省图片加载时间的插件&#xff0c;你可以管理文件和图片&#xff0c;从本地WordPress媒体管理器。该插件还包括一个增强版的WordPress图库管理器&#xff0c;主题 NextGEN图库导入器。 【WordPress插件】Media folder汉化版-媒…

C++的STL简介

0.STL简介 C的STL&#xff08;Standard Template Library&#xff0c;标准模板库&#xff09;是C标准库的一部分&#xff0c;它提供了一套通用的类和函数模板&#xff0c;用于处理数据结构和算法。STL的主要组件包括&#xff1a; 容器分配器算法迭代器适配器仿函数 容器 容…

数据库系统概论:事务与并发一致性问题

随着网络应用的普及&#xff0c;数据库并发问题变得越来越重要。数据库并发指的是多个用户或进程同时访问和操作数据库的能力。它是数据库系统性能优化的重要方面&#xff0c;旨在提高系统的吞吐量和响应时间&#xff0c;以满足多用户同时访问数据库的需求。然而&#xff0c;这…

Linux NFS服务搭建及使用

一、NFS 服务器介绍 nfs &#xff08; Network File System &#xff09;即网络文件系统&#xff0c;其基于 UDP/IP使用 nfs 能够在不同计算机之间通过网络进行文件共享&#xff0c;能使使用者访问网络上其它计算机中的文件就像在访问自己的计算机一样。 二、NFS 服务器的特点 …

Websocket自动消息回复服务端工具

点击下载《Websocket自动消息回复服务端工具》 1. 前言 在进行Websocket开发时&#xff0c;前端小伙伴通常是和后端开发人员同步进行项目开发&#xff0c;经常会遇到后端开发人员接口还没开发完&#xff0c;也没有可以调试的环境&#xff0c;只能按照接口文档进行“脑回路开发…

d3d12.dll 文件缺失如何解决?五种修复丢失问题的方法

d3d12.dll 文件缺失如何解决&#xff1f;它为什么会不见呢&#xff1f;今天&#xff0c;我们将探讨 d3d12.dll 文件的重要性、原因以及丢失时的解决策略。本文将全面介绍 d3d12.dll 文件&#xff0c;并提供五种修复丢失问题的方法。 d3d12.dll文件是什么的详细介绍 d3d12.dll …

vst 算法R语言手工实现 | Seurat4 筛选高变基因的算法

1. vst算法描述 &#xff08;1&#xff09;为什么需要矫正 image source: https://ouyanglab.com/singlecell/basic.html In this panel, we observe that there is a very strong positive relationship between a gene’s average expression and its observed variance. I…

OpenAI 推出 GPT-4o mini,一种更小、更便宜的人工智能模型

OpenAI 最近推出了新型人工智能模型 GPT-4o mini&#xff0c;以其较小体积和低成本受到关注。这款模型在文本和视觉推理任务上性能优越&#xff0c;且比现有小型模型更快、更经济。GPT-4o mini 已向开发者和消费者发布&#xff0c;企业用户将在下周获得访问权限。 喜好儿网 在…

入坑树莓派(2)——树莓派4B与手机蓝牙通信

入坑树莓派(2)——树莓派4B与手机蓝牙通信 1、引言 在入坑树莓派(1)中已经搞掂了可视化问题。现在继续开展下一步,尝试与手机通信,一开始是想弄wifi连接的,但发现基于wifi的APP比较难弄,为了降低开发的难度,又因为树莓派板子自带蓝牙模块,所以直接选用蓝牙连接手机…

LabVIEW多串口通信

随着现代工业控制对数据采集和处理效率的要求不断提升&#xff0c;传统的单串口通信已无法满足多通道数据传输与大规模数据存取的需求。开发一种基于LabVIEW的多串口通信及数据存储系统&#xff0c;以提升数据处理速度和存储效率&#xff0c;保障生产线的稳定运行显得尤为重要。…

数据结构之树的存储结构详解与示例(C/C++)

文章目录 树的存储结构1. 顺序存储结构2. 链式存储结构结论 树&#xff08;Tree&#xff09;是一种非常常见的数据结构&#xff0c;它模拟了一种层级或分支结构。树由节点&#xff08;或称为顶点&#xff09;组成&#xff0c;每个节点包含一个值&#xff0c;并且可能有多个子节…

SpringDoc2问题汇总

在项目中尝试使用SpringDoc进行文档生成&#xff0c;在使用过程中遇到一系列的问题加以记录. 1.引入依赖 只是单纯的使用SpringDoc的话不需要引入一些乱七八糟的依赖&#xff0c;如今各种增强和拓展依赖层出不穷&#xff0c;但是随着这些依赖的出现带来的不仅是增强&#xff0…

在学习使用LabVIEW的过程中,需要注意哪些问题?

在学习使用LabVIEW的过程中&#xff0c;需要注意以下问题&#xff1a; 1. 基础知识 图形化编程思维&#xff1a; LabVIEW采用图形化编程方式&#xff0c;与传统的文本编程语言有很大不同&#xff0c;需要适应这种新的编程思维方式。数据流概念&#xff1a; 理解LabVIEW的核心数…

服务器借助笔记本热点WIFI上网

一、同一局域网环境 1、当前环境&#xff0c;已有交换机组网环境&#xff0c;服务器已配置IP信息。 设备ip服务器125.10.100.12交换机125.10.100.0/24笔记本125.10.100.39 2、拓扑图 #mermaid-svg-D4moqMym9i0eeRBm {font-family:"trebuchet ms",verdana,arial,sa…

AFAC2024-基于保险条款的问答 比赛日记 llamafactory qwen npu 910B1

AFAC2024: 基于保险条款的问答挑战——我的实战日记 概述 在最近的AFAC2024竞赛中&#xff0c;我参与了基于保险条款的问答赛道。这是一次深度学习与自然语言处理的实战演练&#xff0c;旨在提升模型在复杂保险文本理解与问答生成方面的能力。本文将分享我的参赛过程&#xf…

【权威发布】2024年生物技术与医学国际会议(IACBM 2024)

2024年生物技术与医学国际会议 2024 International Conference on Biotechnology and Medicine 【1】会议简介 2024年生物技术与医学国际会议旨在为全球生物技术与医学领域的专家学者提供一个交流最新研究成果、分享技术进展和探讨未来发展方向的平台。会议旨在加强国际间的学术…

阿里云 https证书部署

一.申请证书 二.查看状态 查看状态&#xff0c;已签发是完成了申请证书 三.部署 我在nginx服务器上部署 具体操作链接:阿里云文档 修改前 修改后 四.重启ngnix 五.验证是否成功 在浏览器输入域名查看

【JavaScript 算法】最长公共子序列:字符串问题的经典解法

&#x1f525; 个人主页&#xff1a;空白诗 文章目录 一、算法原理状态转移方程初始条件 二、算法实现注释说明&#xff1a; 三、应用场景四、总结 最长公共子序列&#xff08;Longest Common Subsequence&#xff0c;LCS&#xff09;是字符串处理中的经典问题。给定两个字符串…