shell数组: 索引数组(tuple)和关联数组(dict)

用Python和SQLite从零实现轻量搜索引擎:倒排索引与BM25实战 搜索引擎并非只有Elasticsearch等重型方案,在知识库、帮助文档或内部系统中,轻量级搜索同样能解决实际问题。理解搜索引擎的核心原理,从最简单的概念出发:先对文档进行分词处理,建立倒排索引,再通过BM25算法计算相关度排序,最终提供可解释的搜索服务。这套流程不仅适用于中小规模场景,更能帮助开发者掌握搜索系统的底层逻辑。本文基于Python和SQLite构建一个可运行的mini-search系统,覆盖分词、索引构建、评分和查询接口,并逐步剖析每一步的设计取舍。无论是想学习搜索引擎原理,还是为内部系统快速 阅读详情
#!/bin/bash
#
# test array


function dic(){
    # declare -A  定义关联数组 类似字典 键值对
    declare -A dic
    dic=([key1]="value1" [key2]="value2" [key3]="value3")
    
    # 打印指定key的值
    echo ${dic[key1]}
    echo ${dic[key2]}
    echo ${dic[key3]}
    
    # 打印所有key
    echo ${!dic[*]}
    
    # 打印所有value @ 和 * 同样的意思
    echo ${dic[@]}
    
    # 遍历key
    for key in ${!dic[*]};do
        echo "$key: ${dic[$key]}"
    done
}


# 定义索引数组
tuple=(value1 value2 value3)


# 打印所有值
echo ${tuple[*]}


# 打印数组长度
echo ${#tuple[*]}

# 根据下标打印值
echo ${tuple[0]}
echo ${tuple[1]}
echo ${tuple[2]}


# 遍历
for i in ${tuple[*]};do
    echo $i
done

# 增加一个元素
tuple=(${tuple[*]} value4)
echo ${tuple[*]}
MinerU+LlamaIndex中文RAG落地:离线CPU部署与结构化索引实战 RAG(检索增强生成)是当前企业知识库构建的核心范式,其效果高度依赖PDF等非结构化文档的精准解析与语义化索引。中文文档因排版复杂、扫描件多、印章干扰、表格跨页等问题,导致传统OCR+向量分块方案召回率低、溯源难、部署受限。MinerU作为专为中文优化的结构化提取引擎,可输出带semantic_path和page_number的语义锚点;LlamaIndex则提供面向生产的数据流编排能力,支持多粒度节点、混合检索与增量更新。二者协同突破了‘PDF转文本后问答不准’‘本地部署内存爆满’‘索引质量不稳定’三大工 阅读详情

相关推荐

【鸿蒙游戏上架审核规范指南】

华为鸿蒙游戏上架审核规范指南摘要

weixin_44161102的博客 918

Shell 的Dict

#!/bin/bash echo "shell定义字典" #必须先声明 declare -A dic dic=([key1]="value1" [key2]="value2" [key3]="value3") #打印指定key的value echo ${dic["key1"]} #打印所有key值 echo ${!dic[*]} #打印所有value echo...

alnx37271的博客 1048

基于 MATLAB 的综合能源系统建模案例 

电平衡约束:P_{gt}(t)+P_{grid}(t)-P_{eb}(t)-P_{load}(t)=0,其中 P_{grid}(t) 为与外部电网的交互功率(正表示购电,负表示售电)。- 电锅炉的热输出功率 Q_{eb} 与输入电功率 P_{eb} 的关系为:Q_{eb}=\eta_{eb}\times P_{eb},其中 \eta_{eb} 为电锅炉的热效率。- 燃气轮机的余热回收功率 Q_{gt} 与发电功率也存在一定关系,例如:Q_{gt}=c\times P_{gt},c 为余热回收比例系数。

qq_57128262的博客 1394

shell dict 操作

shell 读取文件,利用dict 合并第一列 。 #!/bin/bash result_file="a" declare -A mydict total=`cat ${result_file}.bak| wc -l ` count=0 #cat ${result_file}.bak | while read campid devid needmd5 while rea...

weixin_30699955的博客 1330

网络调试和分析工具 Proxyman Premium

它支持MacOS、iOS和iPadOS等操作系统,提供丰富的功能,如查看和编辑HTTP/HTTPS请求和响应、设置断点、过滤请求等。Proxyman Premium还支持WebSocket、GraphQL和gRPC等现代网络协议调试,并通过直观且图形化的操作界面,使用户能高效地监控和操纵网络数据流。此外,它还具备多种高级功能,如WebSocket支持、DNS欺骗、自定义SSL证书等,为开发人员提供极大的便利。同时,由于软件版本更新和界面调整,上述步骤可能会有所变化,建议您参考最新版本的官方文档进行操作。

llhf688的博客 2000

InSAR_ISCE软件数据处理流程之:利用哨兵数据获取2015年尼泊尔地震同震形变场

ISCE软件数据处理流程之:利用哨兵数据获取2015年尼泊尔地震同震形变场 ISCE软件做干涉只需要将数据准备好,并配置好insarApp.xml文件即可进行。 一、数据准备 1、SAR数据获取 本利中使用的数据为欧空局提供的sentinel-1A/B数据,可从阿拉斯加数据服务器上下载,具体下载方法可参考: 哨兵数据下载方法. 2、哨兵卫星轨道文件下载 哨兵数据处理除了需要SAR影像外,还需提供轨道参数文件,可从https://qc.sentinel1.eo.esa.int/aux_poeorb/下载。下载

weixin_42128764的博客 1万+

shell脚本中字典的使用

声明字典变量dict declare -A dict 定义字典 dict=([key1]=a [key2]=b [key3]=c) 查询字典 echo ${dict[key1]} 参考资料: [1] [Shell]字典的使用 [博客园]

v-space的博客 3084

基于STM32-XPC仿真平台的构架

基于STM32-XPC仿真平台的构架 xPC Target是MathWorks公司的MATLAB提供的一个基于RTW(Real-Time Workshop)体系框架的附加产品,是一种用于产品原型开发、测试和配置实时系统的PC机解决途径。xPC目标实时仿真系统能够使开发者在产品开发前进行产品原型的快速实现、测试和评估,是 Simulink 工具集下用于产品原型开发设计测试集于一体的工具箱。

sujianbonwpu的博客 4487

shell中的数组和map

##shell中的字符串转数组,map的操作,记录一下。 str="1 2 3 4" #字符串转数组 arr=($str) 数组的长度 echo ${#arr[@]} #无下表的遍历数组 for i in ${arr[@]} do echo $i done #遍历下标 for i in ${!arr[@]} do echo $i ${arr[$i]} done #map 操作 de...

mofiu的博客 1841

大模型长对话中上下文无法承载全部历史,如何压缩或提取重点

如果说截断和滑动窗口是“硬性”压缩,那摘要生成技术就显得“软”多了,也更接近于智能化的解决方案。它的思路是:不直接丢弃历史,而是通过自然语言处理(NLP)技术,把冗长的对话记录浓缩成一段简短的摘要,保留核心信息。这样既能大幅减少token数量,又不至于丢失关键内容。这种方法通常会借助预训练模型,比如BART或T5,它们擅长从长文本中提取重点内容。

大模型大数据攻城狮的专栏 1586

Linux 配置 multipath 多路径

每天一个 DBA 小知识,助你更进一步!

LuciferLiu_DBA 3297

Shell学习整理

目录 Shell学习整理 Shell变量 Shell中的字符串 Shell数组 Shell字符串截取的八种方法 Vim快速注释多行与快速去注释多行 Shell传递参数 Shell数组 Shell基本运算符 echo命令 Printf命令 shell流程控制 For循环 While语句 Until循环 Case语句 Shell函数 开发脚本中遇到的问题 Help函数的书写 脚本中使用rm/mv/cp会提示overwrite mv路径时提示 Shell学习整理 记录

暗焰之珩的博客 887

PCL 法向量夹角剔除错误匹配点对【2026最新版】

实现了一种简单的基于对应点法线角度的对应关系去除方法。博客长期更新,本文最新更新时间为:2026年5月24日。

点云侠的博客 41万+

linux shell map dict 字典数组

#!/bin/bash # # test array function dic(){ # declare -A 定义关联数组 类似字典 键值对 declare -A dic dic=([key1]="value1" [key2]="value2" [key3]="value3") # 打印指定key的值 echo ${dic[ke...

whatday的专栏 1222

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

shell学习01-数组

数组 普通数组 赋值 1、声明的时候赋值 array_1=('a' 'b' 'c' 'd') 2、声明后进行赋值 array_2=() array_2[0]='a' array_2[1]='b' 关联数组 与普通数组的不同在于它的索引是自定义的,·声明方式也不同 declare -A array_3 array_3=([name]='zhangsan' [age]=18) array_3[sex]='female' 普通数组取值 ${array[索引]}:通过索引取一个值 ${array[@]}:通

h1774733219的博客 567

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

shell python对比_python和shell对比

python和shell都是我们经常使用的脚本语言,平时python主要用来写一些小型的任务,shell则在使用liunx系统部署任务的时候用的比较多,由于两者有一些相似之处,时间长了容易混掉,所以这里作文对一些基础的语法需求总结、比较、归纳,以为后用。变量python定义和使用只需要使用变量名,例如var=“hello”print var# hello123shell定义变量只需要变量名,而使用...

weixin_30402231的博客 1911

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Python调用Shell脚本:subprocess模块实战指南与最佳实践

在自动化运维和数据处理中,进程间通信是关键技术概念,它允许不同程序协同工作。其原理是通过操作系统提供的接口,实现数据交换和任务协调。Python的subprocess模块正是这一原理的工程实现,它提供了安全、可控的方式来调用外部命令和脚本,其技术价值在于将Python的丰富生态与Shell的高效系统操作能力无缝结合。在自动化运维、CI/CD流水线、数据处理等应用场景中,开发者常需复用现有Shell脚本或执行系统命令。本文聚焦于Python调用Shell脚本的三种核心方法,通过对比os.system、subp

weixin_30482383的博客 432

Python类内存优化实战:__slots__、Flyweight与生成器

Python类实例默认携带__dict__字典,导致大量冗余内存开销,尤其在高频创建场景下极易引发OOM。其底层原理源于私有堆与内存池分配机制,以及引用计数对循环引用的天然盲区。技术价值在于通过结构化内存控制显著降低RSS,提升服务吞吐与稳定性。典型应用场景包括物联网设备状态管理、实时日志分析、金融风控策略调度等高并发、长周期运行服务。本文聚焦__slots__内存紧身衣、Flyweight对象复用、tuple替代list、生成器流式处理四大实锤技巧,结合pympler与tracemalloc精准测量,提供

weixin_33727510的博客 470

Python基础数据类型详解与应用指南

数据类型是编程语言的核心概念,决定了数据的存储方式和可执行操作。Python作为动态类型语言,其数据类型系统基于'一切皆对象'的设计理念,具有独特的灵活性。从底层实现来看,Python的数字、序列、映射等类型分别采用不同的数据结构优化性能,如列表使用动态数组、字典基于哈希表实现。理解这些基础数据类型的特性和内部机制,能够帮助开发者编写更高效的代码,特别是在数据处理、算法实现等场景中。本文以Python3为例,系统讲解int、float、str、list、dict等基础数据类型的使用方法、转换规则和性能特点,

weixin_33984032的博客 387

python3.12.4 常用四个数据类型的各个函数详解

网上通常的讲法说是因为copy传递的是地址,而不是内容。如果传递的是内容,那么修改第一次的时候,original_list就应该改变了。但是并没有,机制还是有待发掘的,留坑。这是因为a.copy语句并没有执行copy函数,而是把a.copy这个函数赋值给了b。2.根据help( list)的指示,copy函数,将生成一个浅复制。就是完全复制到另一块内存上的空间。这个错误太经典了,核心就是要记住,所有的函数的执行都需要()指示。4.其他list 的基本函数( help( list)),留坑。

root@dream 545

运维开发宝典038-Python五大容器和文件操作2

本文主要介绍了Python编程中的标准数据类型及其应用。首先阐述了数据类型在编程中的重要性:对机器而言决定内存解释方式,对编译器确保程序一致性,对程序员则有助于文档组织和开发效率。随后详细讲解了Python的六种标准数据类型: 数字(Number):包括整型、浮点型和复数,不可变类型。介绍了进制转换、数值运算及常用数学函数(如abs()、round()等)和随机数函数(如choice()、random()等)。 字符串(String):通过引号定义,不可变类型。详细说明字符串的创建、索引访问、切片操作以及常

xulei512050951的博客 252

Pyrlang数据类型终极对照表:atom、pid、improper list、bitstring跨语言转换全解析

Pyrlang 是一个**用 Python 3(基于 Asyncio)实现的 Erlang 节点**,能让你的 Python 程序像 Erlang、Elixir 节点一样加入 BEAM 集群。而两者互通时最容易踩坑的,正是**数据类型**:`atom`、`pid`、`improper list`、`bitstring` 这些类型在 Python 与 Erlang 之间并不一一对应。本文给出一张**

gitblog_00471的博客 673

Python 3.9 升级实战:类型系统、graphlib 与原生泛型深度解析

Python 类型提示是静态类型检查的核心机制,其演进深刻影响代码可维护性与 IDE 智能体验;graphlib 作为标准库新增的图算法模块,为依赖解析、CI/CD 编排等工程场景提供轻量可靠的拓扑排序能力。从 PEP 484 到 PEP 604(UnionType)、PEP 585(内置容器泛型),Python 3.9 实现了类型系统从‘注释辅助’到‘运行时可感知’的关键跃迁。它不仅提升 mypy 和 Pylance 的推断精度,更通过 dict[str, int] 等原生泛型写法统一类型元数据表达,显著

angel192939的博客 672

Python面试题(十一)

1、Python中list、tuple、dict、set有什么区别,主要应用在什么样的场景?并用for语句分别进行遍历 定义: list:链表,有序的项目, 通过索引进行查找,使用方括号”[]”; tuple:元组,元组将多样的对象集合到一起,不能修改,通过索引进行查找, 使用括号”()”; dict:字典,字典是一组键(key)和值(value)的组合,通过键(k...

weixin_30677073的博客 135

未来编程Python笔记

Python笔记python数据类型(八种)1.number(数字类型)2.string(字符串类型)合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程...

未来编程 299

我们一起玩python之 元组和字典

元组概念 元组和列表很相似,不同点是列表是用[]方括号把元素包裹起来,而元组是用()小括号。 与此同时,元组也不能修改里面的元素,这也是和列表的不同点。元组的创建很简单 tup=() 就是创建了一个名为tup的空元组。 tup=(1,) 表示创建一个只有1个元素,数值为1的元组。需要注意的是,即使只包含1个元素,也需要在 tup=('1','3','5') 表示创建了一个含有1、3、5元素的元组。 ...

c_shell_python的博客 351
上一篇: yum配置文件变量详解
why_me310
博客等级 码龄9年 3粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值