1.Python 引入(字面量、注释、变量、数据类型、数据类型转换、标识符、运算符、字符串扩展)
一、字面量
1、基本介绍
- 在代码中,被写直接下来的、不需要通过变量存储的值,称之为字面量
2、常用值类型
类型 | 说明 |
---|---|
数字(Number) | 整数(int),例如:10、-10 浮点数(float),例如: 12.34、-12.34 复数(complex),例如: 4 + 3j ,以 j 结尾表示复数布尔(bool),True 表示真,数字记作 1,False 表示假,数字记作 0 |
字符串(String) | 描述文本的一种数据类型,由任意数量的字符组成,例如,中文、英文、符号、数字等 注:在 Python 中,字符串需要用双引号 "" 包围起来,即被双引号包围起来的,都是字符串 |
列表(List) | 有序的可变序列,Python 中使用最频繁的数据类型,可以有序记录一堆数据 |
元组(Tuple) | 有序的不可变序列,可以有序记录一堆不可变的数据 |
集合(Set) | 无序不重复集合,可以无序记录一堆不重复的数据 |
字典(Dictionary) | 无序 Key - Value 集合,可以无序记录一堆 Key - Value 型数据 |
3、基本使用
类型 | 程序中编写 | 说明 |
---|---|---|
整数 | 10,-10 | 和现实中的写法一致 |
浮点数 | 12.34、-12.34 | 和现实中的写法一致 |
字符串 | "Hello World" | 程需要加上双引号 |
10
12.34
"Hello World"print(10)
print(12.34)
print("Hello World")
- 输出结果
10
12.34
Hello World
二、注释
1、基本介绍
-
注释是在程序代码中对程序代码进行解释说明的文字
-
注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性
2、注释的分类
- 单行注释:以井号
#
开头
# 我是单行注释
- 多行注释:以一对三个双引号
"""
引起来,也可以以一对三个单引号'''
引起来
"""我是多行注释我是多行注释
"""
'''我是多行注释我是多行注释
'''
- 注:多行注释一般对 Python 文件、类或方法进行解释
3、基本使用
"""1.演示各类字面量的写法2.通过 print 语句输出各类字面量
"""# 编写一个整数字面量
10# 编写一个浮点数字面量
12.34# 编写一个字符串字面量
"Hello World"# 通过 print 语句输出各类字面量
print(10)
print(12.34)
print("Hello World")
4、注释问题
编号 | 问题 | 回答 |
---|---|---|
1 | 单行注释中能否使用多行注释? | 不能 |
2 | 多行注释中能否使用单行注释? | 能 |
3 | 多行注释中能否使用多行注释? | 不能 |
三、变量
1、基本介绍
-
变量是在程序中用于存储数据,且变量的值可以发生改变
-
变量的值可以发生改变
2、变量定义
【变量名称】 = 【变量值】
3、基本使用
# 定义一个变量,用来记录钱包的余额
money = 60# 输出变量记录的内容
# print 语句通过使用逗号(,)分隔来输出多份内容
print("钱包余额:", money)# 买了一个冰淇淋,花费 10 元
money = money - 10# 输出变量记录的内容
print("买了一个冰淇淋,花费 10 元,钱包余额:", money)
- 输出结果
钱包余额: 60
买了一个冰淇淋,花费 10 元,钱包余额: 50
四、数据类型
1、基本介绍
- 在入门阶段,主要接触如下三类数据类型
类型 | 描述 | 说明 |
---|---|---|
string | 字符串类型 | 用引号引起来的数据都是字符串 |
int | 整型(有符号),数字类型 | 存放整数,如 -1,10,0 等 |
float | 浮点型(有符号),数字类型 | 存放小数,如 -2.33, 6.66 等 |
2、type() 语句
(1)基本介绍
- 可以通过 type() 语句来得到数据的类型
type(【数据】)
(2)基本使用
- 在 print 语句中,直接输出类型信息
print(type(10)) # <class 'int'>
print(type(1.23)) # <class 'float'>
print(type("Hello World")) # <class 'str'>
- 用变量存储 type() 的结果
int_type = type(10)
float_type = type(1.23)
string_type = type("Hello World")print(int_type) # <class 'int'>
print(float_type) # <class 'float'>
print(string_type) # <class 'str'>
- 查看变量存储的数据的类型
name = "jack"
age = 20
score = 95.5print(type(name)) # <class 'str'>
print(type(age)) # <class 'int'>
print(type(score)) # <class 'float'>
- 数据类型的判断
data1 = 10
data2 = "Hello"print(type(data1) == int) # True
print(type(data1) == str) # False
print(type(data2) == int) # False
print(type(data2) == str) # True
- 注:变量没有类型,它存储的数据有类型
五、数据类型转换
1、为什么要类型转换
-
数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字、数字转字符串等
-
数据类型转换,将会是以后经常使用的功能,如:
-
从文件中读取的数字,默认是字符串,需要转换成数字类型
-
input() 语句,默认结果是字符串,若需要数字也需要转换
-
将数字转换成字符串用以写出到外部系统
2、常见的转换语句
语句(函数) | 说明 |
---|---|
int(x) | 将 x 转换为一个整数 |
float(x) | 将 x 转换为一个浮点数 |
str(x) | 将对象 x 转换为字符串 |
- 注:字符串不可以随意转换成数字,字符串内必须只有数字才可以
3、基本使用
# 将字符串类型转换为数字
int_num = int("10")
print(type(int_num), int_num)float_num = float("1.23")
print(type(float_num), float_num)print("------------------------------")# 将数字类型转换为字符串
int_str = str(123)
print(type(int_str), int_str)float_str = str(123.456)
print(type(float_str), float_str)print("------------------------------")# 整数转换为浮点数
num1 = float(20)
print(type(num1), num1)print("------------------------------")# 浮点数转转换为
num2 = int(6.66)
print(type(num2), num2)
- 输出结果
<class 'int'> 10
<class 'float'> 1.23
------------------------------
<class 'str'> 123
<class 'str'> 123.456
------------------------------
<class 'float'> 20.0
------------------------------
<class 'int'> 6
六、标识符
1、什么是标识符
-
在 Python 中,我们可以给很多东西起名字,比如:变量的名字、方法的名字、类的名字等等,这些名字,我们把它统一的称之为标识符,用来做内容的标识
-
所以,标识符是在编程的时候所使用的一系列名字,用于给变量、类、方法等命名
2、标识符命名规则
(1)内容限定
-
标识符命名中,只允许出现:英文、中文、数字和下划线(_)这四类元素,其余任何内容都不被允许
-
不推荐使用中文
-
数字不可以开头
(2)大小写敏感
- 大写和小写,是完全能够区分的
name = "jack"
Name = "smith"print(name) # jack
print(Name) # smith
(3)不可使用关键字
- Python 中有一系列单词,称之为关键字,关键字在 Python 中都有特定用途,不可以使用它们作为标识符

3、标识符命名规范
- 目前只接触到了变量,所以,目前介绍变量的命名规范
(1)见名知意
-
明了:尽量做到,看到名字,就知道是什么意思
-
简洁:尽量在确保“明了”的前提下,减少名字的长度
(2)下划线命名法
- 多个单词组合变量名,要使用下划线做分隔,如 student_nickname
(3)英文字母全小写
- 命名变量中的英文字母,应全部小写
七、运算符
1、算术运算符
(1)基本介绍
运算符 | 描述 | 实例 |
---|---|---|
+ | 两数相加 | 10 + 20 输出结果为 30 |
- | 得到负数或两数相减 | 10 - 20 输出结果为 -10 |
* | 两数相乘或是返回一个被重复若干次的字符串 | 10 * 20 输出结果为 200 |
/ | 两数相除 | 10 / 20 输出结果为 0.5 |
// | 两数相除并返回商的整数部分 | 9 // 2 输出结果为 4 |
% | 两数相除并余数 | 10 % 5 输出结果为 0 |
** | 幂运算 | 10 ** 2 表示 10 的 2 次方, 输出结果为 100 |
(2)基本使用
print("10 + 20 输出结果为", 10 + 20)
print("10 - 20 输出结果为", 10 - 20)
print("10 * 20 输出结果为", 10 * 20)
print("10 / 20 输出结果为", 10 / 20)
print("9 // 2 输出结果为", 9 // 2)
print("10 % 5 输出结果为", 10 % 2)
print("10 ** 2 输出结果为", 10 ** 2)
- 输出结果
10 + 20 输出结果为 30
10 - 20 输出结果为 -10
10 * 20 输出结果为 200
10 / 20 输出结果为 0.5
9 // 2 输出结果为 4
10 % 5 输出结果为 0
10 ** 2 输出结果为 100
2、赋值运算符
(1)基本介绍
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符,把等号右边的结果赋给左边的变量 | num = 1 + 2 * 3,num = 7 |
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
(2)基本使用
num = 10
num += 5
print("num += 1 输出结果为", num)num = 10
num -= 5
print("num -= 5 输出结果为", num)num = 10
num *= 5
print("num *= 5 输出结果为", num)num = 10
num /= 5
print("num /= 5 输出结果为", num)num = 10
num %= 4
print("num %= 4 输出结果为", num)num = 10
num //= 3
print("num //= 3 输出结果为", num)num = 10
num **= 2
print("num **= 2 输出结果为", num)
- 输出结果
num += 1 输出结果为 15
num -= 5 输出结果为 5
num *= 5 输出结果为 50
num /= 5 输出结果为 2.0
num %= 4 输出结果为 2
num //= 3 输出结果为 3
num **= 2 输出结果为 100
八、字符串扩展
1、字符串定义
(1)定义格式
- 双引号定义法
"【字符串】"
- 单引号定义法
'【字符串】'
- 三个双引号定义法
"""【字符串】"""
- 注:三个双引号定义法,在三个双引号范围内,均是字符串
text = """【字符串】【字符串】
"""
- 三个单引号定义法
'''【字符串】'''
- 注:三个单引号定义法,在三个双引号范围内,均是字符串
text = '''【字符串】【字符串】
'''
(2)基本使用
text1 = "Hello World1"
text2 = 'Hello World2'
text3 = """Hello World3-1Hello World3-2
"""
text4 = '''Hello World4-1Hello World4-2
'''print(text1)
print(text2)
print(text3)
print(text4)
- 输出结果
Hello World1
Hello World2
Hello World3-1Hello World3-2Hello World4-1Hello World4-2
2、字符串的引号嵌套
(1)基本介绍
-
单引号定义法,可以内含双引号
-
双引号定义法,可以内含单引号
-
可以使用转移字符(\)来将引号解除效用,变成普通字符串
(2)基本使用
# 在字符串内包含双引号
str1 = '"Hello World1"'
print(str1)# 在字符串内包含单引号
str2 = "'Hello World2'"
print(str2)# 使用转移字符(\)来将引号解除效用
str3 = "\"Hello World3\""
print(str3)str4 = '\'Hello World4\''
print(str4)
- 输出结果
"Hello World1"
'Hello World2'
"Hello World3"
'Hello World4'
3、字符串拼接
- 字符串字面量之间的拼接
print("Hello " + "World") # Hello World
- 字符串字面量和字符串变量的拼接
name = "jack"
print("Hello " + name) # Hello jack
- 注:无法和非字符串类型进行拼接
4、字符串格式化
(1)字符串拼接的缺点
-
变量过多,拼接起来太麻烦
-
字符串无法和数字或其它类型完成拼接
(2)字符串格式化使用
name = "jack"
age = 20
print("我的名字是 %s" % name) # 我的名字是 jack
print("我的名字是 %s,我今年 %s 岁" % (name, age)) # 我的名字是 jack,我今年 20 岁
符号 | 说明 |
---|---|
% | 表示占位 |
s | 表示将变量变成字符串放入占位位置 |
- 注:多个变量占位,变量要用括号括起来,并按照占位的顺序填入,使用逗号分隔
(3)常用数据类型占位
格式符号 | 说明 |
---|---|
%s | 将内容转换成字符串,放入占位位置 |
%d | 将内容转换成整数,放入占位位置 |
%f | 将内容转换成浮点数,放入占位位置 |
- 基本使用
name = "smith"
age = 15
score = 90.5
print("我的名字是 %s,我今年 %d 岁,我的成绩是 %f" % (name, age, score)) # 我的名字是 smith,我今年 15 岁,我的成绩是 90.500000
5、字符串格式化数字精度控制
(1)基本介绍
- 使用辅助符号“m.n”来控制数据的宽度和精度
符号 | 说明 |
---|---|
m | 控制宽度,要求是数字(很少使用),当设置的宽度小于数字自身时,不生效 |
.n | 控制小数点精度,要求是数字,会进行小数的四舍五入 |
示例 | 说明 |
---|---|
%5d | 表示将宽度设置为 5 位 如,对数字 11 设置 %5d,结果是:【空格】【空格】【空格】11,3 个空格补足宽度 |
%5.2f | 表示将宽度设置为 5 位,将小数点精度设置为 2 位,小数点和小数部分也加入宽度计算 如,对数字 11.345 设置 %7.2f,结果是:【空格】【空格】11.35,2 个空格补足宽度,小数部分四舍五入为 .35 |
%.2f | 表示不限制宽度,只将小数点精度设置为 2 位 如,对数字 11.345 设置 %.2f,结果是:11.35 |
(2)基本使用
num1 = 11
num2 = 12.345print("数字 11 宽度设置为 5,结果是:%5d" % num1)
print("数字 11 宽度设置为 1,结果是:%1d" % num1)
print("数字 12.345 宽度设置为 7,小数精度设置为 2,结果是:%7.2f" % num2)
print("数字 12.345 不限制宽度,小数精度设置为 2,结果是:%0.2f" % num2)
- 输出结果
数字 11 宽度设置为 5,结果是: 11
数字 11 宽度设置为 1,结果是:11
数字 12.345 宽度设置为 7,小数精度设置为 2,结果是: 12.35
数字 12.345 不限制宽度,小数精度设置为 2,结果是:12.35
6、字符串快速格式化
(1)基本介绍
f"{【变量】}"
- 注:这种写法不做精度控制,也不理会类型,适用于快速格式化字符串
(2)基本使用
name = "tom"
age = 15
score = 90.5
print(f"我的名字是 {name},我今年 {age} 岁,我的成绩是 {score}")
- 输出结果
我的名字是 tom,我今年 15 岁,我的成绩是 90.5
7、表达式格式化
(1)什么是表达式
-
表达式是一条具有明确执行结果的代码语句
-
如:1 + 1、5 * 2 就是表达式,因为有具体的结果,结果是一个数字
-
又或者,常见的变量定义:name = “张三”、age = 11 + 11,等号右侧的都是表达式,因为它们有具体的结果,结果赋值给了等号左侧的变量
(2)表达式格式化使用
print("2 * 3 的结果是:%d" % (2 * 3))
print(f"3 * 4 的结果是:{3 * 4}")
print("'Hello World' 在 Python 中的类型是:%s" % type('Hello World'))
- 输出结果
2 * 3 的结果是:6
3 * 4 的结果是:12
'Hello World' 在 Python 中的类型是:<class 'str'>
九、键盘输入
1、input() 语句
-
print() 语句可以完成将内容(字面量、变量等)输出到屏幕上,在 Python 中,与之对应的还有一个 input() 语句,用来获取键盘输入
-
使用 input() 语句可以从键盘获取输入,使用一个变量接收 input() 语句获取的键盘输入数据即可
-
可以通过使用 input(【提示信息】) 用以在使用者输入内容之前显示提示信息
-
无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型
2、基本使用
# 输入字符串类型
print("请告诉我你的名字:")
name = input()
print("你的名字是", name)print("------------------------------")# 输入数字类型
age_str = input("请告诉我你的年龄:")
print(f"你输入的年龄是:{age_str},类型是:{type(age_str)}")
age = int(age_str)
print("你的年龄现在类型是:", type(age))
- 输出结果
请告诉我你的名字:
jack
你的名字是 jack
------------------------------
请告诉我你的年龄:20
你输入的年龄是:20,类型是:<class 'str'>
你的年龄现在类型是: <class 'int'>
相关文章:

1.Python 引入(字面量、注释、变量、数据类型、数据类型转换、标识符、运算符、字符串扩展)
一、字面量 1、基本介绍 在代码中,被写直接下来的、不需要通过变量存储的值,称之为字面量 2、常用值类型 类型说明数字(Number)整数(int),例如:10、-10浮点数(float&…...
【AI知识点】梯度消失(Vanishing Gradient)和梯度爆炸(Exploding Gradient)
梯度消失(Vanishing Gradient) 和梯度爆炸(Exploding Gradient) 是神经网络训练中的常见问题,特别是在深层神经网络(DNN)或递归神经网络(RNN)中。这两者主要与反向传播算…...
在 ArkTS 网络请求中,重新封装一下 http 模块
在ArkTS中,重新封装http模块可以提供一个更简洁、更易于使用的API,同时隐藏底层细节,使开发者能够更专注于业务逻辑。以下是一个简单的示例,展示了如何重新封装鸿蒙系统的kit.NetworkKit中的http模块: // 创建一个新的…...

Microsoft 更新 Copilot AI,未來將能使用語音並看到你瀏覽的網頁
不過受到 Recall 事件的影響,更新的推出將更緩慢謹慎。 Microsoft 也同步對其網頁版及行動版的 Copilot AI 進行大改版。這主要是為網頁版換上了一個較為簡單乾淨的介面,並增加了一些新的功能,像是 Copilot Voice 能讓你與 AI 助手進行對話式…...

系统架构设计师-论文题(2021年下半年)
1.试题一 论面向方面的编程技术及其应用针对应用开发所面临的规模不断扩大、复杂度不断提升的问题,面向方面的编程Aspect Oriented Programming,AOP技术提供了一种有效的程序开发方法。为了理解和完成一个复杂的程序,通常要把程序进行功能划分和封装。一…...

selenium的webdriver常用方法和属性介绍(2)
selenium的webdriver介绍 从selenium导入webdriver模块,在pycharm中跳转webdriver模块的__init__.py文件,内容如图所示:从selenium包的子目录中导入了很多模块并做了重命名,用于支持如下 Chrome/Edge/Ie/Firefox/Safari浏览器。 使…...

73.【C语言】C/C++的内存区域划分
目录 1.内存里的几个区域 2.示意图 3.解释 1.内存里的几个区域 除了耳熟能详的栈区,堆区,静态区,还有内核空间,内存映射段,数据段,代码段 2.示意图 3.解释 栈区(stack area):局部变量,函数参数,返回数据,返回地址 内存映射段:将文件映射到内存 映射的含义: 如果看过李忠…...

k8s 中存储之 hostPath 卷
目录 1 hostPath 卷介绍 2 hostPath 卷实际应用操作 2.1 创建 pod 资源类型 2.2 修改清单文件增加 hostPath 对应的参数配置 2.3 查看是否创建 卷 和 pod 2.4 创建发布文件测试是否正常访问 1 hostPath 卷介绍 EmptyDir中数据不会被持久化,它会随着Pod的结束而销…...

Cherno游戏引擎笔记(73~90)
------- scene viewport ---------- 》》》》做了两件事:设置视口和设置相机比例 》》》》为什么要设置 m_ViewportSize 为 glm::vec2 而不是 ImVec2 ? 因为后面需要进行 ! 运算,而 ImVec2 没有这个运算符的定义,只有 glm::vec2 有这个运算…...

helm 测试卸载或删除(redis)
作者:程序那点事儿 日期:2024/02/07 18:30 查看redis 集群实例 kubectl get all -n redis 卸载集群实例 helm uninstall redis -n redis 删除pvc kubectl get pvc -n redis kubectl delete pvc redis-data-redis-master-0 redis-data-redis-replicas…...

关于Qt音乐播放器进度条拖拽无用的问题解决方案
在使用Qt编写音乐播放器的时候,进度条关联播放音乐基本是必须的。那么在设计的过程中你可能会碰到一个奇怪的问题就是拖拽进度条的时候,可能会报错如下: 然后音乐就卡着不动了。。。 connect(ui->volume_toolButton,&VolumeToolBtn::…...

Redis:初识Redis
Redis:初识Redis Redis 介绍分布式架构Redis特性安装Redis Redis 介绍 在官网中,是如下介绍Redis的: in-memory data store used by millions of developers as a cache, vector database, document database, streaming engine, and messag…...
【React】增量传输与渲染
增量传输 增量传输是一种高效的文件传输方式,其核心原理在于只传输文件中发生变化的部分,而不是整个文件。以下是增量传输的详细解析: 定义与原理: 增量传输通过比对原始文件和目标文件,找出两者之间的差异部分&#…...

【回眸】Tessy 单元测试软件使用指南(四)常见报错及解决方案与批量初始化的经验
前言 分析时Tessy的报错 1.fatal error: Tricore/Compilers/Compilers.h: No such file or directory 2.error: #error "Compiler unsupported" 3.warning: invalid suffix on literal;C11 requires a space between literal and string macro 4.error: unknown…...
2024 - 10 :生物药学: 如何获取对应核心靶点基因的激酶
如何获取对应核心靶点基因的激酶 步骤 1:收集蛋白质信息 获取 UniProt ID: 对于每个基因,使用 UniProt 数据库获取其对应的蛋白质信息,包括 UniProt ID、序列和功能注释。UniProt 网站:https://www.uniprot.org/ 示…...

STM32 HAL库UART查询方式实例
本文中介绍USART编程涵盖了三种主要方法,详细介绍STM32F407微控制器结合HAL库,通过UART的查询方式来实现一个实用的密码验证程序。提示用户键入一个字符作为密码。只有当用户精准地输入字符6时,系统才会反馈“密码正确”的确认信息。反之&…...

数据结构--线性表双向链表的实现
目录 思路设计 总体思维导图 插入部分 头插法尾插法 任意位置插入 删除部分 头结点 尾节点 中间节点 只有头结点且删除的就是头结点 编辑 清空链表部分 遍历清空链表的所有节点 不遍历清空 各部分代码 Main部分 MyListedList部分 IndexOutOfException部分 …...

第一个Flutter应用(一)
1、创建项目 1.1 新建 1.2 选择Flutter SDK的位置 1.3 项目名称 英文单词加下划线起名规范,其他默认即可。 1.4 点击运行 发生报错显示我们的JAVA版本不符合 1.5 更改版本设置 1.6 再次启动项目 2、分析页面代码 以下是lib/main.dart的源代码(为了阅…...

批量查询快递单号物流信息:高效掌握最后更新动态
在电商和物流行业蓬勃发展的今天,快递单号的物流信息追踪显得尤为重要。对于商家和客户来说,了解包裹的最后更新物流状态是确保货物安全、及时送达的关键。本文将介绍如何批量查询快递单号的物流信息,帮助您高效掌握每个包裹的最新动态。 1运…...

随着硬件水平的提升,LabVIEW有哪些过去的编程方法被淘汰掉了
随着硬件水平的不断提升,尤其是处理器性能、存储能力、通信速度等方面的飞跃,LabVIEW的一些早期编程方法逐渐被更高效、现代的编程技术所取代。以下是一些随着硬件升级而逐步淘汰的LabVIEW编程方法和技术: 1. 低效的数据流传输方式 过去由于…...

智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...