当前位置: 首页 > news >正文

字符串、列表、元组、字典

字符串

  • 双引号或者单引号中的数据,就是字符串
字符串输入
之前在学习input的时候,通过它能够完成从键盘获取数据,然后保存到指定的变量中;
注意:input获取的数据,都以字符串的方式进行保存,即使输入的是数字,那么也是以字符串方式保存。
#字符串
name = "Hello Python"
print(name)
#字符串输入
username = input("请输入姓名:")
print(username)

列表

append()    在列表的末尾添加一个元素
clear()    删除列表中的所有元素
copy()    返回列表的副本
count()    返回具有指定值的元素数量。
extend()    将列表元素(或任何可迭代的元素)添加到当前列表的末尾
index()    返回具有指定值的第一个元素的索引
insert()    在指定位置添加元素
pop()    删除指定位置的元素
remove()    删除具有指定值的项目
reverse()    颠倒列表的顺序
sort()    对列表进行排序

len(list)列表元素个数
max(list)返回列表元素最大值
min(list)返回列表元素最小值
list(seq)将元组转换为列表

x in s  如果 s 中的某项等于 x 则结果为 True,否则为 False
x not in s  如果 s 中的某项等于 x 则结果为 False,否则为 True

#列表初始化
namesList = ['xiaoWang','xiaoZhang','xiaoHua']
#列表的遍历
#print(namesList[0])
#print(namesList[1])
#print(namesList[2])
print(namesList) #['xiaoWang', 'xiaoZhang', 'xiaoHua']
#s 从 i 到 j 的切片
print(namesList[0:1]) #['xiaoWang']
#del s[i:j:k]从列表中移除 s[i:j:k] 的元素
print(namesList[0:1:2]) #['xiaoWang']
del namesList[0:1:2]
print(namesList[0:1:2]) #['xiaoZhang']
#使用for循环
# for name in namesList:
#     #print(name)
#     print("")
#使用while循环
len = len(namesList)
i = 0
# while i < len:
#     print(namesList[i])
#     i+=1
#添加元素
#通过append可以向列表添加元素
namesList.append("xiaoLi")
print(namesList) #['xiaoZhang', 'xiaoHua', 'xiaoLi']
# for name in namesList:
#     print(name)
print("-----------")
#删除最后一个元素
namesList.pop()
# for name in namesList:
#     print(name)
print(namesList) #['xiaoZhang', 'xiaoHua']
print("-----------")
#根据元素的值进行删除
namesList.remove("xiaoZhang")
# for name in namesList:
#     print(name)
print(namesList) #['xiaoHua']
#添加集合
#通过extend可以将另一个集合中的元素逐一添加到列表中
namesList.extend(namesList)
#返回具有指定值的元素数量
print(namesList.count("xiaoLi")) # 0
print(namesList.count("xiaoHua"))# 2
# for name in namesList:
#     print(name)print("-----------")
#删除列表中的所有元素
namesList.clear()
namesList = [1,8,1,3,3,4,5,7]
#求和
print(sum(namesList))     # 输出:32
#对列表进行排序
namesList.sort()
print(namesList)#[1, 1, 3, 3, 4, 5, 7, 8]
# for s in namesList:
#     print(s)
#颠倒列表的顺序
namesList.reverse()
print("-----------")
# for s in namesList:
#     print(s)
print(namesList) #[8, 7, 5, 4, 3, 3, 1, 1]
print("-----------")
#如果 s 中的某项等于 x 则结果为 True,否则为 False
print(1 in namesList)#True
print(10 in namesList) #False
print("-----------")
#如果 s 中的某项等于 x 则结果为 False,否则为 True
print(10 not in namesList) #True
print(1 not in namesList) #False
print("-----------")
print(namesList)# [8, 7, 5, 4, 3, 3, 1, 1]
print("-----------")
#s的最小项
print(min(namesList)) #1
#s 的最大项
print(max(namesList))# 8
#x 在 s 中出现的总次数
print(namesList.count(1))# 2
#在由 i 给出的索引位置将 x 插入 s (等同于 s[i:i] = [x])
namesList.insert(5, 5)
print(namesList) #[8, 7, 5, 4, 3, 5, 3, 1, 1]#字符串
name = "Hello Python"
print(name)
#字符串输入
username = input("请输入姓名:")
print(username)

元组

Python的元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
print(tup1) #('physics', 'chemistry', 1997, 2000)
print(tup2) #(1, 2, 3, 4, 5)
print(tup3) #('a', 'b', 'c', 'd')#list转元组
lst = [1, 2, 3]
tup = tuple(lst)
print(tup)  # 输出:(1, 2, 3)
#字符串转元组
s = "Python"
tup2 = tuple(s)
print(tup2)  # 输出:('P', 'y', 't', 'h', 'o', 'n')
#元组中的元素可以通过索引访问,索引从0开始。
print(tup2[0]) #P
#负索引从-1开始,表示从末尾向前数。
print(tup2[-2]) #o
#元组可以使用 + 操作符合并
tup1 = (1, 2, 3)
tup2 = (4, 5, 6)
tup3 = tup1 + tup2
print(tup3)  # 输出:(1, 2, 3, 4, 5, 6)
# 使用 * 操作符重复
tup4 = tup1 * 3
print(tup4)  # 输出:(1, 2, 3, 1, 2, 3, 1, 2, 3)
tup = (1, 2, 3, 4, 5)
#可以使用 in 和 not in 操作符检查元素是否存在于元组中
print(3 in tup)     # 输出:True
print(6 not in tup) # 输出:Truetup = (1, 2, 3, 4, 5)
# 返回元组的长度
print(len(tup))     # 输出:5
# 返回元组中的最大值
print(max(tup))     # 输出:5
# 返回元组中的最小值
print(min(tup))     # 输出:1
#返回元组中所有元素的和(适用于数字元组)
print(sum(tup))     # 输出:15
#返回元组的排序副本(结果为列表)
print(sorted(tup))  # 输出:[1, 2, 3, 4, 5]
#返回元素 x 在元组中出现的次数。
print(tup.count(1)) # 1
# 返回元素 x 在元组中第一次出现的索引
print(tup.index(2)) # 1
#由于元组是不可变的,因此可以用作字典的键。而列表是可变的,不能用作字典的键。
d = {(1, 2): "a", (3, 4): "b"}
print(d[(1, 2)])  # 输出:"a"
print(d[(3, 4)])  # 输出:"b"
#元组常用于传递函数的多个参数。函数可以接受元组作为参数,并解包元组中的元素
def func(a, b, c):print(a, b, c)
tup = (1, 2, 3)
func(*tup)  # 输出:1 2 3
#元组常用于函数返回多个值。函数可以返回一个元组,并在调用时解包返回的元组。
def func():return 1, 2, 3
a, b, c = func()
print(a, b, c)  # 输出:1 2 3
#元组可以存储不同类型的元素,常用于固定结构的数据。例如,一个包含名称、年龄和地址的元组。
person = ("John", 25, "1234 Elm St")
name, age, address = person
print(f"Name: {name}, Age: {age}, Address: {address}")# 输出:Name: John, Age: 25, Address: 1234 Elm St
#元组的优点
#不可变性:元组的不可变性使得它们在多线程环境中是安全的,可以避免数据竞争
tup = (1, 2, 3)
# 无法修改元组中的元素
# tup[0] = 10  # 这行代码会引发错误 TypeError: 'tuple' object does not support item assignment
# 性能:元组的创建和访问速度比列表快,因为它们是不可变的,不需要额外的内存开销
import timeit
t1 = timeit.timeit("(1, 2, 3)", number=1000000)
t2 = timeit.timeit("[1, 2, 3]", number=1000000)
print(f"元组创建时间: {t1}")
print(f"列表创建时间: {t2}")
#哈希特性:元组可以作为字典的键,因为它们是不可变的,这在某些数据结构中非常有用
d = { (1, 2): "a", (3, 4): "b" }
print(d[(1, 2)])  # 输出:"a"
#元组的缺点
#不可变性:虽然不可变性是一个优点,但在需要修改元素的情况下,它可能成为一个限制
#功能限制:与列表相比,元组不支持许多列表的方法,例如 append()、remove() 等,这在某些操作中可能不方便
lst = [1, 2, 3]
lst.append(4)
print(lst)  # 输出:[1, 2, 3, 4]
tup = (1, 2, 3)
#tup.append(4)  # 这行代码会引发错误  AttributeError: 'tuple' object has no attribute 'append'
#元组使用场景
#元组常用于存储不同类型的数据,例如数据库记录。一条记录的不同字段可以用元组存储
record = ("John Doe", 30, "Engineer")
name, age, profession = record
print(f"Name: {name}, Age: {age}, Profession: {profession}")# 输出:Name: John Doe, Age: 30, Profession: Engineer
#在某些情况下,配置项可以用元组存储,因为它们是不可变的,不会被意外修改
config = (800, 600)
# config[0] = 1024  # 这行代码会引发错误
print(config)  # 输出:(800, 600)
#在多线程环境中,使用元组可以避免数据竞争和修改问题
import threading
def worker(data):print(data)
data = (1, 2, 3)
threads = [threading.Thread(target=worker, args=(data,)) for _ in range(5)]
for t in threads:t.start()
for t in threads:t.join()
#嵌套元组 元组可以包含其他元组作为元素,这使得它们可以用于表示复杂的数据结构
nested_tup = (1, (2, 3), (4, (5, 6)))
print(nested_tup[1])  # 输出:(2, 3)
print(nested_tup[2][1])  # 输出:(5, 6)
#元作为数据表 在处理数据库或表格数据时,元组常用于表示行数据
rows = [(1, "John", "Doe"),(2, "Jane", "Smith"),(3, "Emily", "Jones")
]
for row in rows:print(row)
# 输出:
# (1, "John", "Doe")
# (2, "Jane", "Smith")
# (3, "Emily", "Jones")
# 多变量交换
# 元组可以用于交换多个变量的值,而不需要临时变量。
# 嵌套元组元组作为数据表多变量交换
a, b = 1, 2
a, b = b, a
print(a, b)  # 输出:2 1
与列表的比较
1、不可变性:元组是不可变的,而列表是可变的
2、性能:元组的性能通常比列表好,因为它们不需要额外的内存开销
3、功能:列表有更多的方法和操作符,例如 append()、remove() 等
与集合的比较
1、顺序:元组是有序的,而集合是无序的
2、不可变性:元组是不可变的,而集合是可变的
3、重复元素:元组允许重复元素,而集合不允许重复元素

字典

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

字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }

键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。

#键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一
from email.policy import default
from functools import cmp_to_keytinydict = {'a': 1, 'b': 2, 'b': '3'}
print(tinydict['b']) #3
print(tinydict)# {'a': 1, 'b': '3'}tinydict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print(tinydict['Name']) #Zara
print(tinydict['Age']) #7
#如果用字典里没有的键访问数据,会输出错误如下:
#print(tinydict['Age1']) #KeyError: 'Age1'#修改字典 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对
tinydict['Age'] = 18
print(tinydict['Age']) #18
#删除字典元素 能删单一的元素也能清空字典,清空只需一项操作
del tinydict['Name']  # 删除键是'Name'的条目
print(tinydict)
tinydict.clear()  # 清空字典所有条目
print(tinydict) #{}
#不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住
tinydict = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Class': 'Last'}
print(tinydict)
#键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行
#tinydict = {['Name']: 'Zara', 'Age': 7}
#print(tinydict['Name']) #TypeError: unhashable type: 'list'
tinydict.clear()
tinydict = {'a': 1, 'b': 2, 'b': '3'}
#计算字典元素个数,即键的总数。
print(len(tinydict))#2
#输出字典可打印的字符串表示。
print(str(tinydict))#{'a': 1, 'b': '3'}
#返回输入的变量类型,如果变量是字典就返回字典类型。
print(type(tinydict))#<class 'dict'>
#以列表返回可遍历的(键, 值) 元组数组
print(tinydict.items())#dict_items([('a', 1), ('b', '3')])
#以列表返回一个字典所有的键
print(tinydict.keys())#dict_keys(['a', 'b'])
#以列表返回一个字典所有的键
print(tinydict.values())#dict_values([1, '3'])
#d.popitem()随机从字典中取出一个键值对,以元组(key, value)形式返回。取出后从字典中删除这个键值对。
print(tinydict.popitem())#('b', '3')
print(tinydict)#{'a': 1}
tinydict1 = {'a','3'}
#把字典dict2的键/值对更新到dict里
tinydict = {'Name': 'Zara', 'Age': 7}
tinydict2 = {'Sex': 'female' }
tinydict.update(tinydict2)
print ("Value : %s" %  tinydict)#Value : {'Name': 'Zara', 'Age': 7, 'Sex': 'female'}

Python字符串、元组、列表、字典互相转换的方法

#1、字典
dict = {'name': 'Zara', 'age': 7, 'class': 'First'}
#字典转为字符串,返回:<type 'str'> {'age': 7, 'name': 'Zara', 'class': 'First'}
print(type(str(dict)), str(dict))
#字典可以转为元组,返回:('age', 'name', 'class')
print(tuple(dict))
#字典可以转为元组,返回:(7, 'Zara', 'First')
print(tuple(dict.values()))
#字典转为列表,返回:['age', 'name', 'class']
print(list(dict))
#字典转为列表
print(dict.values)
#2、元组
tup=(1, 2, 3, 4, 5)
#元组转为字符串,返回:(1, 2, 3, 4, 5)
print(tup.__str__())
#元组转为列表,返回:[1, 2, 3, 4, 5]
list1 = list(tup)
print(list1)
#元组不可以转为字典
#3、列表
nums=[1, 3, 5, 7, 8, 13, 20];
#列表转为字符串,返回:[1, 3, 5, 7, 8, 13, 20]
print(str(nums))
#列表转为元组,返回:(1, 3, 5, 7, 8, 13, 20)
print(tuple(nums))
#列表不可以转为字典
#4、字符串
#字符串转为元组,返回:(1, 2, 3)
print(tuple(eval("(1,2,3)")))
#字符串转为列表,返回:[1, 2, 3]
print(list(eval("(1,2,3)")))
#字符串转为字典,返回:<type 'dict'>
print(type(eval("{'name':'ljq', 'age':24}")))

相关文章:

字符串、列表、元组、字典

字符串 双引号或者单引号中的数据&#xff0c;就是字符串 字符串输入 之前在学习input的时候&#xff0c;通过它能够完成从键盘获取数据&#xff0c;然后保存到指定的变量中&#xff1b; 注意&#xff1a;input获取的数据&#xff0c;都以字符串的方式进行保存&#xff0c;即…...

数据分析-Excel-学习笔记

Day1 复现报表聚合函数&#xff1a;日期联动快速定位区域SUMIF函数SUMIFS函数环比、同比计算IFERROR函数混合引用单元格格式总结汇报 拿到一个Excel表格&#xff0c;首先要看这个表格个构成&#xff08;包含了哪些数据&#xff09;&#xff0c;几行几列&#xff0c;每一列的名称…...

Nginx 常见面试题

一、nginx常见错误及处理方法 1.1 404 bad request 一般原因&#xff1a;请求的Header过大 解决办法&#xff1a; 配置nginx.conf 相关设置1. client_header_buffer_size 16k; 2. large_client_header_buffers 4 64k;1.2 413 Request Entity Too Large 一般原因&#xff1…...

Spring 中的 @Autowired 和 @Resource

&#x1f9e9; 一、Autowired 和 Resource 的基本作用 注解来源作用AutowiredSpring 提供&#xff08;org.springframework.beans.factory.annotation.Autowired&#xff09;按类型 自动注入ResourceJDK 提供&#xff08;javax.annotation.Resource&#xff09;默认按名称 注入…...

IAGCN:登上《Nature》的深度学习可解释性情感分析模型突破

IAGCN&#xff1a;登上《Nature》的深度学习可解释性情感分析模型突破 一、技术突破背景 社交媒体时代&#xff0c;用户生成内容的情感分析需求激增。传统方面级情感分析模型在复杂语境下存在特征交互捕捉不足、情感极性判定偏差等问题。微软亚洲研究院联合清华大学提出的交互…...

Go 学习笔记 · 进阶篇 · 第一天:接口与多态

&#x1f436;Go接口与多态&#xff1a;继承没了&#xff0c;但自由炸裂&#xff01; 最近翻 Go 的代码&#xff0c;突然看到这么一段&#xff1a; type Animal interface {Speak() string }我一愣&#xff0c;咦&#xff1f;这不就是 Java 里常见的“接口”吗&#xff1f; …...

模运算:数字世界中的时空扭曲法则——从密码学到量子计算的跨维演绎

一、模宇宙基本定理&#xff1a;重构数字时空的底层逻辑 1.1 同余关系的时空折叠效应 在模运算创造的离散时空中&#xff0c;数字呈现出环状拓扑结构。当我们在模7空间观察时&#xff0c;12与5通过时空折叠达成量子纠缠&#xff1a;12 ≡ 5 (mod 7)。这种性质使得RSA加密算法…...

0303hooks-react-仿低代码平台项目

文章目录 1. 副作用2.其他内置hooks2.1 useEffect2.2 useRef2.3useMemo2.4 useCallback 3.自定义hooks4. 第三方hooks5. hooks使用原则6. hooks闭包陷阱7. 总结结语 1. 副作用 当组件渲染完成时&#xff0c;加载一个Ajax网络请求当某个state更新时&#xff0c;加载一个Ajax网络…...

Batch Normalization:深度学习训练的加速引擎

引言 在深度学习的发展历程中&#xff0c;训练深度神经网络一直是一项极具挑战性的任务。随着网络层数的增加&#xff0c;梯度消失、梯度爆炸以及训练过程中的内部协变量偏移&#xff08;Internal Covariate Shift&#xff09;问题愈发严重&#xff0c;极大地影响了模型的收敛…...

nacos的地址应该配置在项目的哪个文件中

在 Spring Boot 和 Spring Cloud 的上下文中&#xff0c;​Nacos 的地址既可以配置在 bootstrap.yml 中&#xff0c;也可以配置在 application.yml 中&#xff0c;但具体取决于使用场景和需求。以下是两者的区别和最佳实践&#xff1a; ​1. bootstrap.yml vs application.yml …...

【数据集】 PBMC(Peripheral Blood Mononuclear Cells)数据集

&#x1f9ec; 一、PBMC 数据集简介 内容描述名称Peripheral Blood Mononuclear Cells&#xff08;外周血单个核细胞&#xff09;细胞类型包括 B 细胞、T 细胞、NK 细胞、单核细胞等技术平台通常由 10x Genomics 提供&#xff08;例如 3k、4k、6k、10k 版本&#xff09;数据类…...

3. go-zero中如何使用redis

问题 go-zero项目相关文档中redis是这样配置的&#xff1a; Name: account.rpc ListenOn: 0.0.0.0:8080 Etcd:Hosts:- 127.0.0.1:2379Key: account.rpcMysql:Host: xxxx:3306User: rootPass: xxxData: mall-userCharset: utf8mb4Cache: - Host: 192.168.145.10:6379Type: nod…...

Redis基础知识

Redis基础知识 一、Redis简介 1.1 什么是Redis&#xff1f; Redis是一个开源的、基于内存的数据结构存储系统&#xff0c;可以用作&#xff1a; 数据库缓存消息中间件分布式锁 1.2 Redis特点 高性能&#xff1a;基于内存操作支持多种数据结构支持数据持久化支持主从复制支…...

每日c/c++题 备战蓝桥杯(求解三个数的最大公约数与最小公倍数)

求解三个数的最大公约数与最小公倍数&#xff08;C/C实现&#xff09; 引言 在数学计算和编程问题中&#xff0c;求多个数的**最大公约数&#xff08;GCD&#xff09;和最小公倍数&#xff08;LCM&#xff09;**是常见需求。本文将探讨如何高效求解三个数的GCD和LCM&#xff…...

解决Win11耳机没有声音的问题

方法一&#xff1a;更新驱动程序&#xff08;有效&#xff09; 进入 “设置”&#xff08;快捷键&#xff1a;WinX&#xff09;&#xff0c;点击 “Windows 更新” → “高级选项” 点击 “可选更新” &#xff0c;然后点击 “驱动程序更新” 【注】&#xff1a;更新后可能会出…...

滤波电容的正负极线宽需要一致吗?

今天看到一个项目的滤波电容的正端采用铺铜处理增大过流能力&#xff0c;但是负极却仅仅打了两个地过孔&#xff0c;不仅产生疑问&#xff0c;这样做是否合理&#xff0c;滤波电容的正负极线宽需要一致吗&#xff1f; 搜寻资料的时候看到这样一个类似的问题&#xff1a; 这些人…...

使用 `pandas` 库来读取 Excel 文件,并实现六种算法的遍历计算

以下是一个满足你需求的 Python 程序示例。在这个示例中&#xff0c;我们假设已经有了处理数据的函数&#xff0c;并且生成的 Excel 文件中包含了观测数据和推算数据。我们将使用 pandas 库来读取 Excel 文件&#xff0c;并实现六种算法的遍历计算。 import pandas as pd# 模拟…...

【Linux】文件描述符访问Open、Read、Write

每个运行的程序被称为进程&#xff08;process&#xff09;&#xff0c;它有一些与之关联的文件描述符。我们可以通过这些文件描述符来访问打开的文件或者设备。 一、文件描述符 什么是文件描述符&#xff1f; 概念&#xff1a;文件描述符&#xff08;File Descriptor&#x…...

在 VS2022 中修复 Linux CMake 项目构建失败:从 Ninja 迁移到 Makefile

问题背景​​ 在使用 ​​Visual Studio 2022​​ 开发跨平台 C 项目时&#xff0c;许多开发者会选择通过 ​​WSL (Windows Subsystem for Linux)​​ 直接在本地调试 Linux 环境下的程序。然而&#xff0c;近期在配置一个 CMake 项目时&#xff0c;遇到了以下报错&#xff1…...

ctf-show-mics2

下载文件用zip解压&#xff0c;将文件修改为flp文件 新建虚拟机&#xff0c;把文件添加到软盘 再次打开虚拟机会显示flag flag&#xff1a;flag{ctfshow}...

STM32_USB

概述 本文是使用HAL库的USB驱动 因为官方cubeMX生成的hal库做组合设备时过于繁琐 所以这里使用某大神的插件,可以集成在cubeMX里自动生成组合设备 有小bug会覆盖生成文件里自己写的内容,所以生成一次后注意保存 插件安装 下载地址 https://github.com/alambe94/I-CUBE-USBD-Com…...

Java 基础-32-枚举-枚举的应用场景

在Java编程中&#xff0c;枚举&#xff08;Enum&#xff09;提供了一种强大的方式来定义一组固定的常量。它们不仅限于简单的用途&#xff0c;还可以包含构造函数、方法和字段等高级功能&#xff0c;使其适用于多种不同的应用场景。本文将探讨几种常见的使用枚举的场景&#xf…...

新潮透明液体水珠水滴失真故障扭曲折射特效海报字体标题设计ps样机动作素材 Bubble Photoshop Templates

只需单击几下即可创建引人注目的视觉效果&#xff01;您需要做的就是将您的文本或图像放入智能对象中并应用作。 包中包含&#xff1a; 15 个静态 Photoshop 模板&#xff08;PS 2019 及更高版本&#xff09; 01-05 垂直布局 &#xff08;22504000&#xff09;06-10 水平布局…...

学透Spring Boot — 017. 魔术师—Http消息转换器

本文是我的专栏《学透Spring Boot》的第17篇文章&#xff0c;了解更多请移步我的专栏&#xff1a; 学透 Spring Boot_postnull咖啡的博客-CSDN博客 目录 HTTP请求和响应 需求—新的Media Type 实现—新的Media Type 定义转换器 注册转换器 编写Controller 测试新的medi…...

stable diffusion 量化加速点

文章目录 一、导出为dynamic shape1)函数讲解(函数导出、输出检查)2)代码展示二、导出为static shape1)函数讲解(略)2)代码展示三、序列化为FP32测速1)测速2)代码四、序列化为FP16测速1)测速2)代码同上五、发现并解决解决CLIP FP16溢出,并测速1)如何找到溢出的算子…...

Xorg内存管理机制深度解析

Xorg内存管理机制深度解析 一、客户端资源生命周期管理 Xorg 采用 客户端绑定型资源管理 机制,所有资源(窗口、像素图、字体等)的生命周期与客户端连接状态强关联。 资源 ID 分配机制: • 每个资源由 32位标识符 表示,格式:0xBBCCDDEE ◦ BB:客户端 ID(ClientIndex)…...

第五期:深入理解 Spring Web MVC [特殊字符]( 前后端交互的综合性练习)

✨ 前言&#xff1a;从理解到实战&#xff0c;彻底掌握 Spring MVC 前后端交互 当我们学习了 Spring MVC 中的各种注解、参数绑定、请求方式、编码处理以及 Cookie/Session 操作之后&#xff0c;下一步就是 —— 动手实践&#xff01; 理论再多&#xff0c;不如亲自敲一次代码…...

ansible可视化自动化平台-semaphore

1、简介 Semaphore UI 是一个开源的CI/CD工具&#xff0c;专注于简化和自动化软件交付流程&#xff0c;可轻松管理和运行 Ansible playbook&#xff0c;提供了一个直观的 Web 用户界面&#xff08;UI&#xff09;&#xff0c;帮助DevOps团队轻松管理任务、部署和流水线。 官网…...

手撕LLM(二):从源码出发,探索LoRA加载、推理全流程

接上回接着说&#xff0c;前面我们通过分析源码&#xff0c;了解了大模型推理的详细流程&#xff0c;包括提示词从输入&#xff0c;到对话模版包装&#xff0c;到tokenID转换&#xff0c;到Embedding词向量转换&#xff1b;通过大模型推理&#xff0c;再将大模型输出进行最后一…...

数据库连接JDBC

概述 ✅概念 JDBC(JavaDataBaseConnectivityjava数据库连接)是⼀种⽤于执⾏SQL语句的JavaAPI&#xff0c;可以为多种关系型数据库提供 统⼀访问&#xff0c;它是由⼀组⽤Java语⾔编写的类和接⼝组成的。 本质 其实就是java官⽅提供的⼀套规范(接⼝)。⽤于帮助开发⼈员快速实现…...

VectorBT:使用PyTorch+Transformer训练和回测股票模型 进阶五

VectorBT&#xff1a;使用PyTorchTransformer训练和回测股票模型 进阶五 本方案基于PyTorch框架与Transformer模型&#xff0c;结合VectorBT回测引擎构建多股票量化交易系统&#xff0c;采用滑动窗口技术构建时序特征&#xff0c;通过自注意力机制捕捉市场规律预测收益率&#…...

DP Alt Mode​​ 与 ​​USB​​ 的关系

DP Alt Mode​​ 与 ​​USB​​ 的关系 1. 物理接口的统一&#xff1a;USB-C 是“万能插座” [USB-C接口物理结构] |-----------------------------------------------| | USB 3.0数据引脚 | DP Alt Mode视频引脚 | 电源引脚 | |-------------------------------------…...

C#“与AI的奇妙结合”

原文&#xff1a;C# 使用通义灵码 - AI 助力 Visual Studio 开发_w3cschool &#xff08;注意&#xff1a;本文章中并不存在任何广告&#xff0c;也不存在任何盈利内容&#xff09; C# 使用通义灵码 C# 作为一种功能强大且灵活多变的编程语言&#xff0c;被广泛应用于各个领…...

企业ITR流程设计与执行详细介绍【附全文阅读】

该方案聚焦企业 ITR 流程,适用于企业的服务管理人员、流程优化负责人、技术支持团队以及中高层管理者等。 ITR 流程的重要性:企业服务面临客户不满、管理者焦虑、服务人员无奈等挑战,缺乏完善的 ITR 流程会影响品牌形象、客户满意度和产品竞争力。ITR 流程能够保障客户满意,…...

Ubuntu 无密码热点(Soft AP)完整配置方案

适用于 Jetson、嵌入式 Linux、RDK 平台。目标&#xff1a;配置一个无密码热点&#xff08;Soft AP&#xff09;&#xff0c;供手机等设备直接连接。实现开机自动启动热点&#xff0c;也支持后续一键切换回 WiFi 客户端模式。 平台&#xff1a;Yahboom RDK X3&#xff08;Jetso…...

【力扣hot100题】(063)搜索二维矩阵

看到这题我就想到之前被我当作这题做的【力扣hot100题】&#xff08;020&#xff09;搜索二维矩阵Ⅱ 其实是完全不一样的两题&#xff0c;个人觉得这道题更简单也更考验基础&#xff0c;那道题思路更难想到但代码更好写。 两个二分查找结束&#xff0c;要注意的是第一个二分查…...

瑞萨RA4M2使用心得-KEIL5的第一次编译

目录 前言 环境&#xff1a; 开发板&#xff1a;RA-Eco-RA4M2-100PIN-V1.0 IDE&#xff1a;keil5.35 一、软件的下载 编辑瑞萨的芯片&#xff0c;除了keil5 外还需要一个软件&#xff1a;RASC 路径&#xff1a;Releases renesas/fsp (github.com) 向下找到&#xff1a; …...

玄机-apache日志分析

靶场任务 1、提交当天访问次数最多的IP&#xff0c;即黑客IP&#xff1a; 查看apache日志 apache访问日志的位置是&#xff1a;/var/log/apache2/access.log.1 匹配正则算法 首先先cat看看 发现地址都在第一行&#xff0c;直接匹配计算输出 cat access.log.1 |grep -Eo &…...

[C++]洛谷B2119 删除单词后缀

题目与解析 题干题目描述输入格式输出格式样例样例输入样例输出 答案解析食用提示AC代码AC代码详细解析头文件部分主程序8~12行代码 12行以后的代码 题干 题目描述 给定一个单词&#xff0c;如果该单词以 er、ly 或者 ing 后缀结尾&#xff0c;则删除该后缀&#xff08;题目保…...

Ubuntu远程连接Mysql数据库(图文详解)

Ubuntu远程连接Mysql数据库 1、版本2、检查有没有Mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.3 查看Mysql运行状态 3、卸载Mysql4、安装4.1 更新4.2 开始安装4.3 安装完后查看状态 5、登录5.1、使用5.2、查看数据库权限5.3 更新权限5.4 再次查看数据库权限5.5 添加新用…...

回归预测 | Matlab实现NRBO-Transformer-GRU多变量回归预测

回归预测 | Matlab实现NRBO-Transformer-GRU多变量回归预测 目录 回归预测 | Matlab实现NRBO-Transformer-GRU多变量回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【JCR一区级】Matlab实现NRBO-Transformer-GRU多变量回归预测&#xff0c;牛顿-拉夫逊算法优…...

leetcode122-买卖股票的最佳时机II

leetcode 122 思路 方法一的核心思想是简单的贪心策略。我们每天都看当前价格和下一个价格的差值。如果下一个价格高于当前价格&#xff08;即diff > 0&#xff09;&#xff0c;那么就认为当天可以买入并在第二天卖出&#xff0c;赚取利润。因此&#xff0c;方法一把所有…...

from PIL import Image 安装失败

正确安装 Pillow (PIL) # 通过 Conda 安装 conda install pillow -c conda-forge# 或通过 Pip 安装 pip install pillow验证安装 在 Python 中测试是否成功&#xff1a; from PIL import Image print(Image.__version__) # 应输出类似 "9.5.0" 的版本号常见问题说…...

DPFunc蛋白质功能预测模型复现报告

模型简介 模型的具体介绍见蛋白质功能预测论文阅读记录2025&#xff08;DPFunc、ProtCLIP&#xff09;_protein functions-CSDN博客 复现流程 仓库&#xff1a;CSUBioGroup/DPFunc 时间&#xff1a;2025.4.5 环境配置 python 3.9.21 & CUDA 11.6 Pytorch: 1.12.0 DG…...

在 Ubuntu24.04 LTS 上 Docker Compose 部署基于 Dify 重构二开的开源项目 Dify-Plus

一、安装环境信息说明 硬件资源&#xff08;GB 和 GiB 的主要区别在于它们的换算基数不同&#xff0c;GB 使用十进制&#xff0c;GiB 使用二进制&#xff0c;导致相同数值下 GiB 表示的容量略大于 GB&#xff1b;换算关系&#xff1a;1 GiB ≈ 1.07374 GB &#xff1b;1 GB ≈ …...

双系统ubuntu20.04不能外接显示器的解决办法

一&#xff0c;更换驱动 首先确定是不是英伟达显卡驱动&#xff0c;如果不是的话&#xff0c;设置里找到附加驱动&#xff0c;更改为NVIdia类型的驱动&#xff0c;更改完成之后重启 这里大部分电脑都可以了&#xff0c;如果不行 二、更改启动方式 重启之后进入BIOS设置&…...

高并发内存池:原理、设计与多线程性能优化实践

高并发内存池是一种专门为多线程环境设计的内存管理机制&#xff0c;其核心目标是通过优化内存分配和释放过程&#xff0c;解决传统内存分配器&#xff08;如malloc/free&#xff09;在高并发场景下的性能瓶颈&#xff0c;显著提升多线程程序的内存访问效率。 目录 一、核心设计…...

03.31-04.06 论文速递 聚焦具身智能、复杂场景渲染、电影级对话生成等五大前沿领域

&#x1f31f; 论文速递 | 2025.03.31-04.06 &#x1f4e2; 聚焦具身智能、复杂场景渲染、电影级对话生成等前沿领域 1️⃣ 具身智能体&#xff1a;从脑启发到安全协作系统 论文标题&#xff1a; Advances and Challenges in Foundation Agents: From Brain-Inspired Intellige…...

Django和Celery实现的异步任务案例

推荐超级课程: 本地离线DeepSeek AI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速入门实战目录 先决条件步骤1:安装依赖项步骤2:配置Celery2.1 创建`celery.py`2.2 更新 `__init__.py`步骤3:配置Django设置步骤4:定义Celery任务…...

DAY 38 leetcode 15--哈希表.三数之和

题号15 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 未去重版本 整体思路&#xff1a;先排序再双指针遍…...