Python基础知识语法归纳总结(数据类型-1)
一、Python基本数据类型
尤其注意,Python中的变量不需要特定的去声明,每个变量在使用前都必须对其进行赋值,它没有类型,我们所说的“类型”是变量所指的内存中对象的类型。
等号(=)用来给变量赋值。
等号(=)左边是一个变量名,而右边是一个存储在变量中的值。
1.1 程序演示
如下面的程序:
a = 30
b = 30.0
c = '小明'
d = True
e = ['小米', '小王', 'Alice', 'Fock']
f = (a, b, c, d)
g = {'1', '2', '3', '4', '5', '6'}
h = {'name': '小米','age': 20,'like': 'Dog',
}print(f"{a},它的数据类型是:{type(a)}。")
print(f"{b},它的数据类型为{type(b)}。")
print(f"{c},它的数据类型为{type(c)}。")
print(f"{d},它的数据类型为{type(d)}。")
print(f"{e},它的数据类型为{type(e)}。")
print(f"{f},它的数据类型为{type(f)}。")
print(f"{g},它的数据类型为{type(g)}。")
print(f"{h},它的数据类型为{type(h)}。")
输出结果:
30,它的数据类型是:<class ‘int’>。
30.0,它的数据类型为<class ‘float’>。
小明,它的数据类型为<class ‘str’>。
True,它的数据类型为<class ‘bool’>。
[‘小米’, ‘小王’, ‘Alice’, ‘Fock’],它的数据类型为<class ‘list’>。
(30, 30.0, ‘小明’, True),它的数据类型为<class ‘tuple’>。
{‘2’, ‘3’, ‘5’, ‘1’, ‘4’, ‘6’},它的数据类型为<class ‘set’>。
{‘name’: ‘小米’, ‘age’: 20, ‘like’: ‘Dog’},它的数据类型为<class ‘dict’>。
下面我们来一一解释这些数据类型。
1.2 标准数据类型
Python中常见的数据类型有:
- Number(数值类型)
- String(字符串类型)
- bool(布尔类型)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python的六大数据类型主要可分为两类:
- 不可变数据:Number(数值类型)、String(字符串)、Tuple(元组)
- 可变数据:List(列表)、Dictionary(字典)、Set(集合)
除此之外,还有一些高级的数据类型,比如字节数组类型(bytes)。
1.3 Number(数值类型)
Python支持的数值类型有:int、float、bool、complex(复数) —— 这些数值类型,主要指Python3;
那么,还有一种Python2中的long型;
Python内置的函数type()
函数可以用来查询变量所指的对象数据类型;
除此之外,还可以使用isinstance
来判断,如下:
a = 30
print(isinstance(a,float))
# 输出结果:False
isinstance
和type
的区别:
isinstance()
会认为子类是一种父类类型;type()
不会认为子类是一种父类类型。
class A:"""书写一个父类"""passclass B(A):"""书写一个子类来继承父类"""passprint(isinstance(A(), A)) # True
print(type(A()) == A) # True
print(isinstance(B(), A)) # True
print(type(B()) == A) # False
特别注意:在之前的程序中,可能会出现True
和False
数字加减的情况,因为True == 1、False == 0
会返回True
,但可以通过isinstance()
来判断类型。
print(isinstance(bool, int)) # False
print(True + 1) # 2
print(False + 1) # 1
print(1 is True) # False
print(0 is False) # False
使用print(1 is True) 、print(0 is False)
程序出现了一个警告,如下图:
为什么会出现SyntaxWarning
?
Python检测到你在用is
比较一个整型数值,就给你报了一个语法警告,这通常也就是代码错误(因为is
比较的是身份,而不是值),而Python也给出了一个建议,Python建议你使用==
来代替is
,这样效果会好很多。
- 1、Python可以同时为多个变量赋值,如
a,b = 1,2
; - 2、一个变量可以通过赋值指向不同类型的对象;
- 3、数值的除法包含来个运算符:
/
返回一个浮点数,//
返回一个整数; - 4、在混合计算时,Python会把整型转换成为浮点数。
数值类型实例:
int | float | complex |
---|---|---|
10 | 0.0 | 3.14j |
100 | 15.20 | 45.j |
-786 | -21.9 | 9.322e-36j |
080 | 32.3e+18 | .876j |
-0490 | -90. | -.6545+0J |
-0x260 | -32.54e100 | 3e+26J |
0x69 | 70.2E-12 | 4.53e-7j |
1.4 String(字符串)
Python中的字符串用单引号'
或者使用"
括起来,同时使用反斜杠\
转义特殊字符。
字符串截取的语法格式如下:
加号 +
是字符串的连接,星号 *
表示复制当前字符串,与之结合的数字为复制的次数。
strings = '小明你是猪吗?'
print(f"打印字符串:{strings}。")
print(f"打印第一个到倒数第二个字符(不包含倒数第一个字符):{strings[0: -1]}")
print(f"打印第一个字符:{strings[0]}")
print(f"打印第三个到第五个字符(不包含第五个字符):{strings[2:5]}")
print(f"打印字符串从第三个开始到最后一个字符:{strings[2:]}")
print(f"打印三次字符串:{strings * 3}")
print(strings + "不,你是蠢猪!!")
运行结果:
打印字符串:小明你是猪吗?。
打印第一个到倒数第二个字符(不包含倒数第一个字符):小明你是猪吗
打印第一个字符:小
打印第三个到第五个字符(不包含第五个字符):你是猪
打印字符串从第三个开始到最后一个字符:你是猪吗?
打印三次字符串:小明你是猪吗?小明你是猪吗?小明你是猪吗?
小明你是猪吗?不,你是蠢猪!!
Python使用反斜杠\n
转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面加一个r
,表示原始字符串,如下:
print("你是\n猪")
print(r'你是\n猪')
输出结果:
你是
猪
你是\n猪
特别注意:Python字符串不能被改变,向一个索引位置赋值,会报错误,报错如下:
注意:
- 反斜杠可以用来转义,使用
r
可以让反斜杠不发生转义。 - 字符串可以用
+
运算符连接在一起,用*
运算符重复。 - Python中的字符串有两种索引方式,从左往右以
0
开始,从右往左以-1
开始。 - Python中的字符串不能改变。
1.5 bool(布尔类型)
布尔类型即 True
或 False
。
在 Python 中,True
和 False
都是关键字,表示布尔值。
布尔类型可以用来控制程序的流程,比如判断某个条件是否成立,或者在某个条件满足时执行某段代码。
布尔类型特点:
- 布尔类型只有两个值:
True
和False
。 - bool 是
int
的子类,因此布尔值可以被看作整数来使用,其中True
等价于1
。 - 布尔类型可以和其他数据类型进行比较,比如数字、字符串等。在比较时,Python 会将
True
视为1
,False
视为0
。 - 布尔类型可以和逻辑运算符一起使用,包括
and
、or
和not
。这些运算符可以用来组合多个布尔表达式,生成一个新的布尔值。 - 布尔类型也可以被转换成其他数据类型,比如整数、浮点数和字符串。在转换时,
True
会被转换成1
,False
会被转换成0
。 - 可以使用
bool() 函数
将其他类型的值转换为布尔值。以下值在转换为布尔值时为False:None
、False
、零 (0、0.0、0j)
、空序列(如 ''、()、[])
和空映射(如 {})
。其他所有值转换为布尔值时均为True
。
"""bool(布尔类型)实例"""
a = True
b = False
print(a + b)
print(a - b)
print(a * b)
# 进行判断,让程序不因为报错而终止运行,在这里添加了一段异常处理方式,进而让程序继续往下执行
try:print(a / b)
except ZeroDivisionError:print("你是怎么想的,竟然用(零)做除数!!!")
# 看一下变量a、b的数据类型
print(type(a))
print(type(b))
# bool()函数转换
print(bool(a))
print(bool(b))
print(bool(54))
print(bool([]))
print(bool({}))
print(bool('王'))
print(bool(3*5))
# bool判断数值运算
print(4 > 5)
print(4 > -30)
# bool在if- else中的作用
if True:print("你是对的,我相信你!!")
if not False:print("我依然相信你,不用怕!!")
x = 100
if x < 50:print(f"这是{x}。")
else:print("哇哦,还行!")
运行结果:
1
1
0
你是怎么想的,竟然用(零)做除数!!!
<class ‘bool’>
<class ‘bool’>
True
False
True
False
False
True
True
False
True
你是对的,我相信你!!
我依然相信你,不用怕!!
哇哦,还行!
注意: 在 Python 中,所有非零的数字和非空的字符串、列表、元组等数据类型都被视为 True
,只有 0
、空字符串
、空列表
、空元组
等被视为 False
。因此,在进行布尔类型转换时,需要注意数据类型的真假性。
1.6 List(列表)
List(列表)是Python中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构,列表中元素的类型可以不相同,它支持数字、字符串甚至可以包含列表(也就是所谓的嵌套)。列表是写在方括号[]
之间,用逗号,
隔开的元素列表。和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标 : 尾下标]
索引值以0
为开始值,-1
为末尾的开始位置。
同样的,加号+
是列表连接运算符,星号*
是重复操作:
小试牛刀:将一个色子掷7000次,统计每种点数出现的次数;
import randoma1 = 0
a2 = 0
a3 = 0
a4 = 0
a5 = 0
a6 = 0
for i in range(7000):face = random.randrange(1, 7)if face == 1:a1 += 1elif face == 2:a2 += 1elif face == 3:a3 += 1elif face == 4:a4 += 1elif face == 5:a5 += 1elif face == 6:a6 += 1else:print("你越界了!!")pass
# 打印出现的次数
print(f"点数1出现的次数:{a1}。")
print(f"点数2出现的次数:{a2}。")
print(f"点数3出现的次数:{a3}。")
print(f"点数4出现的次数:{a4}。")
print(f"点数5出现的次数:{a5}。")
print(f"点数6出现的次数:{a6}。")
运行结果:
点数1出现的次数:1151。
点数2出现的次数:1152。
点数3出现的次数:1169。
点数4出现的次数:1183。
点数5出现的次数:1140。
点数6出现的次数:1205。
上面的代码,看起来,最后的结果也确实实现出来了,但是分支用的太多,麻烦、冗余。我们有一种更好的方法来优化上面的代码,也就是用这里的列表来实现。在Python中,我们可以使用容器型变量来保存和操作多个数据,也就是这里的列表(List):
Python中的列表,它的长度和列表元素都是可以改变的。
注意:
- 访问列表中的值:它与字符串的索引是一样的,即从
0
开始,第二个索引是1
,依此类推;而列表中的最后一个字符串的索引为-1
,往前一个是-2
,也是依此类推的,如下图:
- 使用索引进行截取列表
[]
,如下图:
- 更新列表:我们可以对列表中的数据项进行修改或者更新,也可以使用
append()
来添加列表项,如下所示:
"""更新列表"""
lists = ['Google', 'Alice', 'cn.bing.com', 'www.baidu.com', 'www.bilibili.com', 'Stock', '小明']
# 打印这个列表
print(f"这个列表数据项为:{lists}。")
# 打印最后一个列表数据项
print(f"列表lists中,最后一个数据项为{lists[-1]}。")
# 替换列表中,最后一个元素 '小明' 将其替换为 'Yuer'
lists[-1] = 'Yuer'
# 打印替换后的最后一个元素
print(f"列表lists替换后的,最后一个数据项为{lists[-1]}。")
# 截取列表 listss = list[2 : 5]
strList = lists[2:len(lists) - 3]
# 打印出截取到的列表
print(f"截取到的列表数据项为:{strList}。")
# 向列表中添加一个元素 '大明'
lists.append('大明')
# 输出添加的列表数据项
print(f"添加的列表数据项为:{lists[-1]}")
print(f"经过更新后,这个列表中的数据项为{lists}")
运行结果:
这个列表数据项为:[‘Google’, ‘Alice’, ‘cn.bing.com’, ‘www.baidu.com’, ‘www.bilibili.com’, ‘Stock’, ‘小明’]。
列表lists中,最后一个数据项为小明。
列表lists替换后的,最后一个数据项为Yuer。
截取到的列表数据项为:[‘cn.bing.com’, ‘www.baidu.com’]。
添加的列表数据项为:大明
经过更新后,这个列表中的数据项为[‘Google’, ‘Alice’, ‘cn.bing.com’, ‘www.baidu.com’, ‘www.bilibili.com’, ‘Stock’, ‘Yuer’, ‘大明’]
- 列表的运算:我们可以使用
+
运算符来实现两个列表的拼接,拼接运算会将两个列表中的元素连接在一起,放到一个列表中,同理,使用*
号也是同样的效果,如下:
"""列表的运算 —— +号"""
aa = [1, 11, 12, 13, 14, 15]
bb = [3, 11, 45, 67, 98, 12]
cc = ['Python', 'Java', 'C++', 'JavaScript']
# 拼接运算
dd = aa + bb + cc
print(f"拼接后的列表为:{dd}。")"""使用 * 号代码重复运算"""
ee = cc * 2
print(f"使用*号的运算结果:{ee}")
运算结果:
拼接后的列表为:[1, 11, 12, 13, 14, 15, 3, 11, 45, 67, 98, 12, ‘Python’, ‘Java’, ‘C++’, ‘JavaScript’]。
使用*号的运算结果:[‘Python’, ‘Java’, ‘C++’, ‘JavaScript’, ‘Python’, ‘Java’, ‘C++’, ‘JavaScript’]
- 使用列表切片来提取子列表数据项:列表切片是一种非常强大的功能,它运行你从一个列表中提取一部分元素进而新成新的子列表。切片操作使用方括号
[]
和冒号:
来指定起始索引、结束索引以及步长。
"""列表的运算 —— +号"""
aa = [1, 11, 12, 13, 14, 15]
bb = [3, 11, 45, 67, 98, 12]
cc = ['Python', 'Java', 'C++', 'JavaScript']
# 拼接运算
dd = aa + bb + cc
print(f"拼接后的列表为:{dd}。")"""使用 * 号代码重复运算"""
ee = cc * 2
print(f"使用*号的运算结果:{ee}")"""切片提取列表数据项形成新的子列表"""
# 提取列表dd中的数据项
dd1 = dd[0: len(dd)-3: 3]
# 输出使用切片后得到的子列表
print(f"使用切片后获取到的列表为:{dd1}。")
输出结果:
拼接后的列表为:[1, 11, 12, 13, 14, 15, 3, 11, 45, 67, 98, 12, ‘Python’, ‘Java’, ‘C++’, ‘JavaScript’]。
使用*号的运算结果:[‘Python’, ‘Java’, ‘C++’, ‘JavaScript’, ‘Python’, ‘Java’, ‘C++’, ‘JavaScript’]
使用切片后获取到的列表为:[1, 13, 3, 67, ‘Python’]。
语法:
切片运算是形如
[start:end:stride]
的运算符,其中start
代表访问列表元素的起始位置,end
代表访问列表元素的终止位置(终止位置的元素无法访问),而stride
则代表了跨度,简单的说就是位置的增量,比如我们访问的第一个元素在start
位置,那么第二个元素就在start + stride
位置,当然start + stride
要小于end
。
如果
start
值等于0
,那么在使用切片运算符时可以将其省略;如果end
值等于N
,N
代表列表元素的个数,那么在使用切片运算符时可以将其省略;如果stride
值等于1
,那么在使用切片运算符时也可以将其省略。
- 通过切片来更改列表数据项:如下
# 操作切片来修改列表中的数据项
# 操作切片来修改列表中的数据项
dd1 = [1, 13, 3, 67, 'Python']
dd1[1: 3: 1] = ['C#', 'C++']
print(f"输出经过使用切片修改后的列表数据项:{dd1}。")
输出结果:
输出经过使用切片修改后的列表数据项:[1, ‘C#’, ‘C++’, 67, ‘Python’]。
- 列表之间还可以做关系运算:我们可以比较两个列表是否相等,也可以给两个列表比较大小,如下:
"""列表做关系运算"""
a = [1, 3, 7, 89]
b = [4, 9, 20]
print(a == b) #False
print(a != b) #True
print(a > b) #False
上面的
a
和b
对应的元素完全不相等,索引进行==
运算的结果为False
;进行!=
运算后的结果为True
;而进行>
运算的结果为False
。大小关系通常比较的是第一个元素,所以才会出现,进行a > b
的运算后,结果为False
。
- 元素的遍历:在Python中,
for
循环是一种常见的遍历列表的方式,通过for
循环,我们可以一次访问列表中的每一个元素,并对其进行操作。
c = ['Python', 'Java', 'C++', 'JavaScript']
for i in c:print(i)
代码解析:
1、c = ['Python', 'Java', 'C++', 'JavaScript']
:定义了一个包含三个元素的列表c
;
2、for i in c:
:使用for
循环遍历列表c
,每次循环将列表中的一个数据项赋值给变量i
。
3、print(i)
,在每次循环中,打印当前i
的值;
输出结果:
Python
Java
C++
JavaScript
上面的掷色子就可以优化了,优化如下:
import randomcount = [0] * 6
print(count)
# 循环7000次
for a in range(7000):# face用来记录,出现1到7出现的点数face = random.randrange(1, 7)# 利用索引每次循环就对对应的点数加一,即将循环后的索引对应的列表数据项进行更新count[face - 1] += 1
# 再对1到7生成的点数进行循环,即获取列表count中的列表数据项
for face in range(1, 7):print(f"点数{face}出现的次数为{count[face - 1]}。")
运行结果:
点数1出现的次数为1210。
点数2出现的次数为1175。
点数3出现的次数为1160。
点数4出现的次数为1161。
点数5出现的次数为1179。
点数6出现的次数为1115。
相关文章:
Python基础知识语法归纳总结(数据类型-1)
Python基础知识&语法归纳总结(数据类型) 一、Python基本数据类型 尤其注意,Python中的变量不需要特定的去声明,每个变量在使用前都必须对其进行赋值,它没有类型,我们所说的“类型”是变量所指的内存中对…...
Spring数据访问全解析:ORM整合与JDBC高效实践
目录 一、Spring ORM集成深度剖析 🌟 ORM模块架构设计 核心集成特性: 整合MyBatis示例配置: 二、Spring JDBC高效实践指南 🌟 传统JDBC vs Spring JDBC对比 🌟 JdbcTemplate核心操作示例 批量操作优化…...
哪种电脑更稳定?Mac?Windows?还是云电脑? 实测解密
随着科技的发展进步,电脑已成为当下各类群体的必备产品之一,它的妙用有很多,无论是学生党、打工人还是已经退休的人群或都离不开它的存在。然而,电脑虽好却也差异很大、不同品牌、不同系统、不同配置、不同价位的统统都会有区别。…...
【AI模型学习】关于写论文——论文的审美
文章目录 一、“补丁法”(Patching)1.1 介绍1.2 方法论1.3 实例 二、判断工作的价值2.1 介绍2.2 详细思路2.3 科研性vs工程性 三、novelty以及误区3.1 介绍3.2 举例 看了李沐老师的读论文系列后,总结三个老师提到的有关课题研究和论文写作的三…...
【面经】杭州产链数字科技一面
1.介绍一下自己 面试官您好!我叫***,目前是就读于****计算机科学与技术专业的一名学生。我平时在学校也自学了编程相关的知识,比如Java基础、Springboot、SpringCloud,关系型数据库Mysql,非关系型数据库Redisÿ…...
微信小程序调用yolo目标检测模型
目录 后端 前端微信小程序 完整代码 后端 利用Flask,调用目标检测模型,后端代码如下。 # flask_yolo.py from flask import Flask, request, jsonify from ultralytics import YOLO from PIL import Imageapp Flask(__name__) model_path best.p…...
vmware17 虚拟机 ubuntu22.04 桥接模式,虚拟机无法接收组播消息
问题描述: 在一个项目中,宿主机win10中,使用的vmware17pro 虚拟机安装的ubuntu22.04,按照网上的教程使用Qt绑定组播消息,在另外一个Ubuntu工控机上发送用wiresahrk抓包的组播消息 sudo tcpreplay -i enp1s0 --loop0 y…...
Kaggle-Bag of Words Meets Bags of Popcorn-(二分类+NLP+Bert模型)
Bag of Words Meets Bags of Popcorn 题意: 有很多条电影评论记录,问你每一条记录是积极性的评论还是消极性的评论。 数据处理: 1.首先这是文件是zip形式,要先解压,注意sep ‘\t’。 2.加载预训练的 BERT 分词器 …...
数字信号处理技术架构与功能演进
数字信号处理(DSP)是通过数字运算实现信号分析、变换、滤波及调制解调的技术领域,其发展过程与技术应用如下: 一、定义与核心功能 技术定义:通过算法将模拟信号转换为数字形式进行处理,具有高精度、可编程…...
IaaS架构剖析、场景实践
一、什么是 IaaS 1.1 定义 Infrastructure as a Service(IaaS,基础设施即服务)是一种按需、弹性提供计算、存储、网络和安全等底层 IT 资源的云服务模式。用户通过 API、CLI 或 Web 控制台即可在几分钟内创建、扩容或释放资源,而…...
国产之光DeepSeek架构理解与应用分析02
本专栏 国产之光DeepSeek架构理解与应用分析-CSDN博客 国产之光DeepSeek架构理解与应用分析02-CSDN博客 前置的一些内容理解 GPU TPU NPU的区别? 设计目的 GPU:最初是为了加速图形渲染而设计的,用于处理图像和视频数据,以提供高…...
EDID结构
EDID DDC通讯中传输显示设备数据 VGA , DVI 的EDID由128字节组成,hdmi的EDID增加扩展块128字节。扩展快的内容主要是和音频属性相关的,DVI和vga没有音频,hdmi自带音频,扩展快数据规范按照cea-861x标准。 Edid为了让pc或其他的图像…...
4.黑马学习笔记-SpringMVC(P43-P47)
1.SpringMVC简介 SpringMVC技术(更少的代码,简便)与servlet技术功能相同,属于web层开发技术。 SpringMVC是一种基于java实现MVC模型的轻量级web框架。 轻量级指的是(内存占用比较低,运行效率高)…...
CSS 文件格式
A QFrame#andrFrm[status"android_en"] A:表示父类或顶层窗口的类型。如果 A 是一个自定义的类名,确保该类已经正确注册到 Qt 系统中。QFrame:表示具体的控件类型。#andrFrm:表示控件的对象名称(通过 setOb…...
java输出HelloWorld
创建一个java格式文件,这里命令为HelloWorld 这里我选择用notepad编译,也可以直接用记事本 #public 访问修饰词,表示这个类可以被其他任何类访问 #class 定义类的关键字 #HelloWorld 类名,遵循驼峰命名法(首字母大写…...
【SAP ME 44】在 HANA DB中报废SFC时的SHOP_ORDER表记录锁定
症状 SELECT…FROM SHOP_ORDER FOR UPDATE 在 SFC 报废期间持有锁,当同时调用数量较大时,可能会导致 HANA 数据库出现大量锁积压。这有时会导致因等待 HANA 数据库释放“选择更新”锁而导致报废 SFC 花费数分钟。 HANA 数据库日志中的示例: # begin PreparedStatement_ex…...
《软件设计师》复习笔记(12.1)——范围管理、进度管理
目录 一、范围管理 1. 核心概念 2. 范围管理过程 WBS(工作分解结构)示例 真题示例: 二、进度管理 1. 核心过程 2. 关键工具与技术 真题示例: 一、范围管理 1. 核心概念 项目范围:为交付产品必须完成的工作…...
Git-使用教程(新手向)
一、基本概念: 1.Git,Github的关系: Git --- 本地用于管理代码的工具,可类比为游戏存档。(存档,仓库,项目在Git中是一个东西) Github --- 远程仓库平台,可类比为云端。…...
密码学中的盐值是什么?
目录 1. 盐值的基本概念 2. 盐值的作用 (1) 防止彩虹表攻击 (2) 防止相同的密码生成相同的哈希值 (3) 增加暴力破解的难度 3. 如何使用盐值? (1) 生成盐值 (2) 将盐值附加到密码 (3) 存储盐值和哈希值 (4) 验证密码 4. 盐值如何增加暴力破解的难度 在线暴…...
[工具]Java xml 转 Json
[工具]Java xml 转 Json 依赖 <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all --> <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.37</version> </dependen…...
安全光幕的CE认证
在工业自动化飞速发展的当下,安全光幕作为保障操作人员安全的关键设备,其重要性不言而喻。对于想要进军欧盟市场的安全光幕制造商来说,CE 认证是必须跨越的一道关卡。今天,我们就来深入探讨安全光幕的 CE 认证流程。 什么是安全…...
DNS解析失败怎么解决?
在互联网时代,畅快地浏览网页、使用各类网络服务已成为生活常态。然而,当屏幕突然弹出 “DNS解析失败”的提示,原本顺畅的网络连接戛然而止,让人倍感困扰。DNS即域名系统,它如同互联网的 “电话簿”,负责将…...
亚马逊商品详情API数据接口概述,Amazon API
亚马逊商品详情API数据接口概述 亚马逊商品详情API(如Amazon Product Advertising API或Selling Partner API (SP-API))是亚马逊为开发者提供的官方接口,允许通过编程方式获取商品的详细信息,包括商品标题、价格、描述、图片、用…...
TCP/IP和UDP协议的发展历程
TCP/IP和UDP协议的发展历程 引言 互联网的发展史是人类技术创新的辉煌篇章,而在这一发展过程中,通信协议发挥了奠基性的作用。TCP/IP(传输控制协议/互联网协议)和UDP(用户数据报协议)作为互联网通信的基础…...
LeetCode 259 题全解析:Swift 快速找出“满足条件”的三人组
文章目录 摘要描述示例 1:示例 2:示例 3: 题解答案(Swift)题解代码分析示例测试及结果时间复杂度空间复杂度总结 摘要 本文围绕 LeetCode 259 题“较小的三数之和”,通过 Swift 给出两种解法,并…...
【MySQL】MySQL表的增删改查(CRUD) —— 上篇
目录 MySQL表的增删改查(CRUD) 1. 新增(Create)/插入数据 1.1 单行数据 全列插入 insert into 表名 values(值, 值......); 1.2 单行数据 指定列插入 1.3 多行数据 指定列插入 1.4 关于时间日期(datetime&am…...
基于大模型的腹股沟疝诊疗全流程风险预测与方案制定研究报告
目录 一、引言 1.1 研究背景与意义 1.2 国内外研究现状 1.3 研究目的与创新点 二、大模型技术概述 2.1 大模型基本原理 2.2 常用大模型类型及特点 2.3 大模型在医疗领域的应用潜力 三、腹股沟疝诊疗流程分析 3.1 腹股沟疝的发病机制与分类 3.2 传统术前评估方法与局…...
使用nssm将Nginx配置为Windows服务
使用nssm将Nginx配置为Windows服务 下载nssm工具 :使用NSSM创建服务启动并验证服务管理服务(启动/停止/重启) 下载nssm工具 : nssm下载网址 下载到指定路径下,解压就行。 使用NSSM创建服务 winr打开运行命令框&am…...
(8)VTK C++开发示例 --- 交互式3D部件
文章目录 1. 概述2. CMake链接VTK3. main.cpp文件4. 演示效果 更多精彩内容👉内容导航 👈👉VTK开发 👈 1. 概述 这个例子介绍了3D小部件(vtkBoxWidget)。3D小部件利用了前面介绍的事件/观察者设计模式。它们…...
ReAct、CoT 和 ToT:大模型提示词推理架构的对比分析
ReAct、CoT 和 ToT:大模型提示词推理架构的对比分析 在大型语言模型(LLM)的研究与应用中,如何有效提升模型在复杂任务上的推理能力是关键问题之一。目前,ReAct(Reasoning and Acting)、CoT&…...
Evidential Deep Learning和证据理论教材的区别(主要是概念)
最近终于彻底搞懂了Evidential Deep Learning,之前有很多看不是特别明白的地方,原来是和证据理论教材(是的,不只是国内老师写的,和国外的老师写的教材出入也比较大)的说法有很多不一样,所以特地…...
golang context源码
解析 context结构 Deadline:返回 context 的过期时间; Done:返回 context 中的 channel; Err:返回错误; Value:返回 context 中的对应 key 的值. type Context interface {Deadline() (deadl…...
VSCODE插值表达式失效问题
GET https://cdn.jsdelivr.net/npm/vue2.6.14/dist/vue.js net::ERR_CONNECTION_-CSDN博客 更换正确的vue域名 GET https://cdn.jsdelivr.net/npm/vue2.6.14/dist/vue.js net::ERR_CONNECTION_ <script src"https://unpkg.com/vue2.6.14/dist/vue.js"></sc…...
6.VTK 颜色
文章目录 概念RGB示例HSV示例 概念 RGB颜色系统:通过红(R)、绿(G)、蓝(B)三个颜色分量的组合来定义颜色。每个分量的取值范围是0到1,其中(0, 0, 0)代表黑色,而(1, 1, 1)代表白色。可以使用vtkProperty::SetColor(r, g, b)方法为Actor设置颜色…...
MQTTClient.c的线程模型与异步事件驱动
MQTTClient.c的线程模型与异步事件驱动 1. 多线程架构设计 MQTTClient.c通过分离网络I/O和用户逻辑线程实现异步通信,核心设计如下: sequenceDiagramparticipant 主线程 as 主线程(用户调用)participant 发送队列 as 发送队列pa…...
Flutter异常Couldn‘t find dynamic library in default locations
Flutter项目在Windows系统使用ffigen生成代码时报下面的错误: [SEVERE] : Couldnt find dynamic library in default locations. [SEVERE] : Please supply one or more path/to/llvm in ffigens config under the key llvm-path. Unhandled exception: Exception: …...
在PyCharm中部署AI模型的完整指南
引言 随着人工智能技术的快速发展,越来越多的开发者开始将AI模型集成到他们的应用程序中。PyCharm作为一款强大的Python IDE,为AI开发提供了出色的支持。本文将详细介绍如何在PyCharm中部署AI模型,从环境配置到最终部署的完整流程。 第一部分:准备工作 1. 安装PyCharm …...
6.6.图的广度优先遍历(英文缩写BFS)
树是一种特殊的图,树的广度优先遍历即层次遍历,所以会从树的角度入手图的广度优先遍历: BFS与DFS的区别在于,BFS使用了队列,DFS使用了栈 一.广度优先遍历: 1.树的广度优先遍历: 详情见"…...
练习(杨辉三角、字符串旋转)
一、 以下程序执行的结果: int main() {//0~255unsigned char a 200;//00000000000000000000000011001000//11001000 - a 截断unsigned char b 100;//00000000000000000000000001100100//01100100 - b unsigned char c 0;c a b;//11001000 - a//0110010…...
L1-7 矩阵列平移
题目 给定一个 nn 的整数矩阵。对任一给定的正整数 k<n,我们将矩阵的偶数列的元素整体向下依次平移 1、……、k、1、……、k、…… 个位置,平移空出的位置用整数 x 补。你需要计算出结果矩阵的每一行元素的和。 输入格式: 输入第一行给出…...
webgl入门实例-11模型矩阵 (Model Matrix)基本概念
WebGL 模型矩阵 (Model Matrix) 在WebGL和3D图形编程中,模型矩阵(Model Matrix)是将物体从局部坐标系(模型空间)转换到世界坐标系的关键变换矩阵。 什么是模型矩阵? 模型矩阵是一个4x4的矩阵,用于表示物体在世界空间中的位置、旋转和缩放。…...
【漫话机器学习系列】209.均值的标准误差(Standard Error of the Mean)
均值的标准误差(Standard Error of the Mean)详解 在统计学中,我们经常会遇到“均值的标准误差”这个概念,英文称为 Standard Error of the Mean(简称 SEM)。它是对样本均值作为总体均值估计的可靠程度的一…...
Multi Agents Collaboration OS:文档合规性及质量检测助手设计及实践
文档审查及质量检测背景 随着企业运营和知识管理的日益复杂,文档的合规性与质量成为确保信息准确、流程顺畅及风险控制的关键环节。传统上,人工进行文档的合规性和质量检测不仅耗时耗力,且易受主观因素影响,难以保证检测的全面性…...
Vue Teleport 及其在 SSR 中的潜在问题
Vue 3 的 Teleport 特性为开发者提供了更灵活的 DOM 结构控制能力,但在服务端渲染(SSR)场景中,它可能引发一些需要注意的问题。本文将深入探讨 Teleport 的核心机制及其在 SSR 中的使用陷阱。 一、Teleport 核心机制解析 1. 基本…...
Fastapi 日志处理
uvicorn 日志处理总结: 一、日志的结构 日志结构如下: {"version": 1,"disable_existing_loggers": false,"formatters": {},"handlers": {},"loggers": {} }loggers 用于定义日志处理最顶层的标识…...
FME实现矢量建筑面shp拉伸并贴纹理
文章目录 效果2、数据准备3、整理流程图4、操作步骤4.1 打开软件4.2 添加shp数据4.3 添加Extruder转换器4.4 添加AppearanceSetter转换器4.5 添加png纹理数据4.6 添加输出节点4.7 添加Logger节点4.8 执行5、执行结果效果 2、数据准备 (1)建筑面shp (2)纹理 test.png 其中s…...
仿腾讯会议项目实现——设置配置文件
目录 1、初始化配置 2、实现初始化配置的函数 3、修改配置文件内的ip地址 1、初始化配置 Ckernel.h 2、实现初始化配置的函数 3、修改配置文件内的ip地址 首先修改IP 运行出现设置的IP, 找到运行的配置文件,修改成自己当前的ip 将函数运行条件改成非…...
1187. 【动态规划】竞赛总分
题目描述 学生在我们USACO的竞赛中的得分越多我们越高兴。我们试着设计我们的竞赛以便人们能尽可能的多得分。 现在要进行一次竞赛,总时间T固定,有若干类型可选择的题目,每种类型题目可选入的数量不限,每种类型题目有一个si(解答…...
从零开始学Python游戏编程31-类3
2.6 run()方法 run()方法的作用是在while循环中调用以上方法,运行游戏。代码如图11所示。 图11 run()方法代码 其中,第43行控制while循环的是实例属性running,在图7所示的__init__()方法中定义;第44-46行代码分别调用了processI…...
Transformer 架构 - 解码器 (Transformer Architecture - Decoder)
一、解码器整体结构:多层堆叠设计 Transformer解码器由N个相同结构的解码器层堆叠而成(通常N=6),每层包含三个核心子模块(图1) 1 5 12 : 带掩码的多头自注意力层(Masked Multi-Head Self-Attention)编码器-解码器注意力层(Encoder-Deco…...