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

shell脚本字典创建遍历打印

解释:
代码块中包含了每个用法的详细解释

#!/bin/bash# 接收用户输入的两个数
echo "请输入第一个数:"
read num1
echo "请输入第二个数:"
read num2# 创建一个关联数组
declare -A dict1
declare -A dict2# 定义键和值的数组
key1=(1 3 5 7 9 2 4 6 8 10)
key2=(10 8 6 4 2 9 7 5 3 1)
value1=(1 2 3 4 5 6 7 8 9 10)# 循环遍历数组,将键和值对应起来
for ((i=0; i<${#key1[@]}; i++)); dodict1[${key1[i]}]=${value1[i]}
donefor ((i=0; i<${#key2[@]}; i++)); dodict2[${key2[i]}]=${value1[i]}
done#打印(echo用 -e \t组合使得输出显示空格)
echo "-------dict1-------"
echo -e "key \t:\t value"
for key in $(echo ${!dict1[*]})
doecho -e "$key \t:\t ${dict1[$key]}"
doneecho "-------dict2-------"
echo -e "key \t:\t value"
for key in $(echo ${!dict2[*]})
doecho -e "$key \t:\t ${dict2[$key]}"
done# 根据输入的数和字典中的值计算实际的值
if [[ $num1 -eq 1 || $num1 -eq 2 ]]; thenc=${dict1[$num2]}
elif [[ $num1 -eq 3 || $num1 -eq 4 ]]; thenc=${dict2[$num2]}
elsec=90
fisum=$((50 + ((num1 - 1) * 10) + c))
echo "实际的值为:$sum"

输出:

请输入第一个数:
2
请输入第二个数:
2
-------dict1-------
key 	:	 value
9 	:	 5
8 	:	 9
7 	:	 4
6 	:	 8
5 	:	 3
4 	:	 7
3 	:	 2
2 	:	 6
1 	:	 1
10 	:	 10
-------dict2-------
key 	:	 value
9 	:	 6
8 	:	 2
7 	:	 7
6 	:	 3
5 	:	 8
4 	:	 4
3 	:	 9
2 	:	 5
1 	:	 10
10 	:	 1
实际的值为:66

相关文章:

shell脚本字典创建遍历打印

解释&#xff1a; 代码块中包含了每个用法的详细解释 #!/bin/bash# 接收用户输入的两个数 echo "请输入第一个数&#xff1a;" read num1 echo "请输入第二个数&#xff1a;" read num2# 创建一个关联数组 declare -A dict1 declare -A dict2# 定义键和值…...

【设计模式】聊聊职责链模式

原理和实现 模板模式变化的是其中一个步骤&#xff0c;而责任链模式变化的是整个流程。 将请求的发送和接收解耦合&#xff0c;让多个接收对象有机会可以处理这个请求&#xff0c;形成一个链条。不同的处理器负责自己不同的职责。 定义接口 public interface Filter {/*** …...

【C++进阶之路】第五篇:哈希

文章目录 一、unordered系列关联式容器1.unordered_map&#xff08;1&#xff09;unordered_map的介绍&#xff08;2&#xff09;unordered_map的接口说明 2. unordered_set3.性能对比 二、底层结构1.哈希概念2.哈希冲突3.哈希函数4.哈希冲突解决&#xff08;1&#xff09;闭散…...

CentOS基Docker容器时区配置解决方案

配置Docker容器的时区对于确保应用程序正确处理日期和时间至关重要。当使用CentOS作为基础镜像时&#xff0c;可以通过以下两种方法配置时区&#xff1a; 方法一&#xff1a;在Dockerfile中设置时区 这种方法涉及在构建Docker镜像的过程中设置时区。 步骤 选择基础镜像&…...

探索 Material 3:全新设计系统和组件库的介绍

探索 Material 3&#xff1a;全新设计系统和组件库的介绍 一、Material 3 简介1.1 Material 3 的改进和更新1.2 Material 3 的优势特点 二、Material 3 主题使用2.1 使用 Material3 主题2.2 使用 Material3 主题颜色 三、Material 3 组件使用3.1 MaterialButton&#xff1a;支持…...

《多GPU大模型训练与微调手册》

全参数微调 Lora微调 PTuning微调 多GPU微调预备知识 1. 参数数据类型 torch.dtype 1.1 半精度 half-precision torch.float16&#xff1a;fp16 就是 float16&#xff0c;1个 sign&#xff08;符号位&#xff09;&#xff0c;5个 exponent bits(指数位)&#xff0c;10个 ma…...

【C++】const与类(const修饰函数的三种位置)

目录 const基本介绍 正文 前: 中: 后: 拷贝构造使用const 目录 const基本介绍 正文 前: 中: 后: 拷贝构造使用const const基本介绍 const 是 C 中的修饰符&#xff0c;用于声明常量或表示不可修改的对象、函数或成员函数。 我们已经了解了const基本用法,我们先进行…...

深度学习在图像识别中的革命性应用

深度学习在图像识别中的革命性应用标志着计算机视觉领域的重大进步。以下是深度学习在图像识别方面的一些革命性应用&#xff1a; 1. **卷积神经网络&#xff08;CNN&#xff09;的崭新时代**&#xff1a; - CNN是深度学习在图像识别中的核心技术&#xff0c;通过卷积层、池化…...

R语言读文件“-“变成“.“

R语言读取文件时发生"-"变成"." 如果使用read.table函数&#xff0c;需要 check.namesFALSE data <- read.table("data.tsv", headerTRUE, row.names1, check.namesFALSE)怎样将"."还原为"-" 方法一&#xff1a;gsub函…...

RabbitMQ 基础操作

概念 从计算机术语层面来说&#xff0c;RabbitMQ 模型更像是一种交换机模型。 Queue 队列 Queue&#xff1a;队列&#xff0c;是RabbitMQ 的内部对象&#xff0c;用于存储消息。 RabbitMQ 中消息只能存储在队列中&#xff0c;这一点和Kafka相反。Kafka将消息存储在topic&am…...

自然语言处理:Transformer与GPT

Transformer和GPT&#xff08;Generative Pre-trained Transformer&#xff09;是深度学习和自然语言处理&#xff08;NLP&#xff09;领域的两个重要概念&#xff0c;它们之间存在密切的关系但也有明显的不同。 1 基本概念 1.1 Transformer基本概念 Transformer是一种深度学…...

Ps:裁剪工具 - 裁剪预设的应用

裁剪工具提供了两种类型的裁剪方式。 一种是仅按宽高比&#xff08;比例&#xff09;进行裁剪&#xff0c;常在对图像进行二次构图时采用。 另一种则按指定的图像尺寸&#xff08;宽度值和高度值&#xff09;及分辨率&#xff08;宽 x 高 x 分辨率&#xff09;进行裁剪。其实质…...

前端工程化-什么是构建工具

了解构建工具之前&#xff0c;我们首先要知道的是浏览器只认识html、css、js&#xff0c;而我们开发时用的vue&#xff0c;react框架都只是为了方便我们开发而使用的工具 使用构建工具的原因 vue或react的企业级项目里都会具备这些功能&#xff1a; 1.使用typescript语言&…...

01-论文阅读-Deep learning for anomaly detection in log data: a survey

01-论文阅读-Deep learning for anomaly detection in log data: a survey 文章目录 01-论文阅读-Deep learning for anomaly detection in log data: a survey摘要I 介绍II 背景A 初步定义B 挑战 III 调查方法A 搜索策略B 审查的功能 IV 调查结果A 文献计量学B 深度学习技术C …...

图像处理02 matlab中NSCT的使用

06 matlab中NSCT的使用 最近在学习NSCT相关内容&#xff0c;奈何网上资源太少&#xff0c;简单看了些论文找了一些帖子才懂了一点点&#xff0c;在此分享给大家&#xff0c;希望有所帮助。 一.NSCT流程 首先我们先梳理一下NSCT变换的流程&#xff0c;只有清楚流程才更好的理清…...

提升办公效率,畅享多功能办公笔记软件Notion for Mac

在现代办公环境中&#xff0c;高效的笔记软件对于提高工作效率至关重要。而Notion for Mac作为一款全能的办公笔记软件&#xff0c;将成为你事业成功的得力助手。 Notion for Mac以其多功能和灵活性而脱颖而出。无论你是需要记录会议笔记、管理项目任务、制定流程指南&#xf…...

Apache Airflow (十三) :Airflow分布式集群搭建及使用-原因及

&#x1f3e1; 个人主页&#xff1a;IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 &#x1f6a9; 私聊博主&#xff1a;加入大数据技术讨论群聊&#xff0c;获取更多大数据资料。 &#x1f514; 博主个人B栈地址&#xff1a;豹哥教你大数据的个人空间-豹…...

# 聚类系列(一)——什么是聚类?

目前在做聚类方面的科研工作, 看了很多相关的论文, 也做了一些工作, 于是想出个聚类系列记录一下, 主要包括聚类的概念和相关定义、现有常用聚类算法、聚类相似性度量指标、聚类评价指标、 聚类的应用场景以及共享一些聚类的开源代码 下面正式进入该系列的第一个部分&#xff…...

Android DatePicker(日期选择器)、TimePicker(时间选择器)、CalendarView(日历视图)- 简单应用

示意图&#xff1a; layout布局文件&#xff1a;xml <?xml version"1.0" encoding"utf-8"?> <ScrollView xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"…...

linux环境搭建mysql5.7总结

以下安装方式&#xff0c;在阿里云与腾讯云服务器上都测试可用。 一、进入到opt目录下&#xff0c;执行&#xff1a; [rootmaster opt]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz解压&#xff1a; [rootmaster opt]#…...

娱乐圈天降紫微星重在天命,海棠山铁哥不沾人间资源自封神

伪真理&#xff1a;成名靠铺路&#xff0c;封神靠资源。 真规律&#xff1a;重天命、不重人脉&#xff1b;凭天道、不凭人力。一、人造神明的流水线环节操作本质资本砸钱铺路利益选择圈层抱团抬轿人情交换平台倾斜流量规则馈赠团队精密运营人为设计 他们“被成全”——被资本选…...

小基站、运营商Wi-Fi与光网络融合:2012年通信基础设施变革的技术驱动力与部署实践

1. 市场繁荣背后的技术驱动力解析2012年&#xff0c;当行业报告显示运营商Wi-Fi和光网络市场正在蓬勃发展时&#xff0c;这不仅仅是一个简单的市场数据&#xff0c;它背后反映的是一场由用户行为改变引发的、深刻的基础设施技术变革。作为一名长期跟踪通信网络部署的从业者&…...

ComfyUI命令行工具:AI图像生成自动化与集成指南

1. 项目概述&#xff1a;当ComfyUI遇上命令行&#xff0c;效率革命就此开启如果你和我一样&#xff0c;是Stable Diffusion工作流的重度使用者&#xff0c;那么对ComfyUI一定不会陌生。这个基于节点图的可视化界面&#xff0c;以其强大的灵活性和可复现性&#xff0c;彻底改变了…...

LookScanned.io终极指南:5分钟学会制作专业扫描PDF的免费神器

LookScanned.io终极指南&#xff1a;5分钟学会制作专业扫描PDF的免费神器 【免费下载链接】lookscanned.io &#x1f4da; LookScanned.io - Make your PDFs look scanned 项目地址: https://gitcode.com/gh_mirrors/lo/lookscanned.io 还在为制作扫描版PDF而烦恼吗&…...

别再只用Swiper做普通轮播了!用Vue3+Vite+TS实现这个‘异形’轮播,让你的H5页面瞬间高级

突破常规&#xff1a;用Vue3Swiper打造高级异形轮播组件 在移动端H5页面设计中&#xff0c;轮播图几乎是标配元素。但你是否注意到&#xff0c;90%的轮播图都采用千篇一律的横向滑动效果&#xff1f;这种设计虽然实用&#xff0c;却难以在用户心中留下深刻印象。今天&#xff…...

如何构建个人技能知识库:从零到一打造结构化技术档案

1. 项目概述&#xff1a;一个技能库的诞生与价值 在技术领域&#xff0c;尤其是软件开发、运维和数据分析等岗位&#xff0c;我们常常面临一个困境&#xff1a;如何系统性地管理、展示和迭代自己的技能树&#xff1f;简历上的“精通Java”、“熟悉Docker”显得苍白无力&#xf…...

从RSS到Humanoids:一张图看懂机器人顶会‘江湖地位’与投稿策略

从RSS到Humanoids&#xff1a;机器人顶会投稿策略与学术生态全景解析 在机器人研究领域&#xff0c;学术会议不仅是展示最新成果的舞台&#xff0c;更是研究者职业发展的重要跳板。面对RSS、IROS、ICRA、CASE、Humanoids等众多会议&#xff0c;如何选择最适合的投稿目标&#…...

如何精准计算AI提示词成本?TikTokenizer在线分词器深度解析

如何精准计算AI提示词成本&#xff1f;TikTokenizer在线分词器深度解析 【免费下载链接】tiktokenizer Online playground for OpenAPI tokenizers 项目地址: https://gitcode.com/gh_mirrors/ti/tiktokenizer 你是否曾经在使用ChatGPT、GPT-4或其他大语言模型时&#x…...

地磁暴如何影响卫星电机控制与轨道动力学:SpaceX星链卫星损失事件深度解析

1. 项目概述&#xff1a;当太阳风暴成为卫星的“隐形杀手” 2022年2月&#xff0c;SpaceX经历了一次代价高昂的教训。他们刚刚发射的一批49颗星链&#xff08;Starlink&#xff09;卫星&#xff0c;在进入预定轨道的初期&#xff0c;遭遇了一场突如其来的地磁暴。结果&#xff…...

如何快速上手Asio:10个简单示例带你掌握C++网络编程

如何快速上手Asio&#xff1a;10个简单示例带你掌握C网络编程 【免费下载链接】asio Asio C Library 项目地址: https://gitcode.com/gh_mirrors/as/asio Asio是一个功能强大的C库&#xff0c;专为网络和底层I/O编程设计&#xff0c;提供了异步操作模型&#xff0c;帮助…...