已知根据下标获取元素的写法是
a=(14 25 39 46 52)
echo ${a[2]}
输出结果是 39
那么根据元素如何查询该元素的对应下标呢?
热议
2楼 heihai 昨天22:08
3楼 maxkvm 昨天22:09
不同下标相同数据呢,要怎么判断
输出两个不同的下标值
4楼 HOH 昨天22:10
这位同学,我布置的作业请自己完成
5楼 maxkvm 昨天22:12
这位同学,我布置的作业请自己完成
不会就不要凑热闹
6楼 yanzhiling2002 昨天22:17
计算机的排序是从0开始的,不是常识中的1.
你看到的a2 ,在计算机执行里,是第三个数。
a=(14 25 39 46 52)
a0 =14
a1 =25
a2 =39
7楼 maxkvm 昨天22:19
计算机的排序是从0开始的,不是常识中的1.
你看到的a2 ,在计算机执行里,是第三个数。
我没说错啊,下标2对应的元素是39
8楼 yanzhiling2002 昨天22:25
我没说错啊,下标2对应的元素是39
不好意思,没看清楚要求
我能想到的就是键值对用shell操作比较麻烦
9楼 yanzhiling2002 昨天22:28
我给你问了一下chatgpt
在shell中,可以使用数组来存储元素,并使用循环结构来查找元素对应的下标。 例如,下面的脚本演示了如何使用循环结构查找数组中指定元素的下标:
shell
#!/bin/bash
# 定义一个数组
array=("apple" "banana" "orange" "pear" "peach")
# 需要查找的元素
element="orange"
# 使用循环结构查找元素
for i in "${!array[@]}"; do
if [[ "${array[$i]}" = "${element}" ]]; then
echo "元素 ${element} 的下标为 ${i}"
break
fi
done
在上述脚本中,首先定义了一个数组`array`,然后定义了需要查找的元素`element`。接着,使用`for`循环遍历数组中的每个元素,使用`if`语句判断当前元素是否为需要查找的元素,如果是,则输出该元素的下标,并使用`break`语句跳出循环。 需要注意的是,在`for`循环中,使用`${!array[@]}`来获取数组中所有元素的下标。`${array[$i]}`表示获取数组中下标为`$i`的元素的值。 如果需要查找数组中所有符合条件的元素的下标,可以将`break`语句删除,并将输出语句改为打印所有符合条件的元素的下标。
10楼 gundam06ms 昨天22:29
你说的不清不楚,会重复吗?是大小排列好的么?
12楼 maxkvm 昨天22:39
你说的不清不楚,会重复吗?是大小排列好的么?
不必大小排列,就是我说的自定义排列
13楼 maxkvm 昨天22:40
不好意思,没看清楚要求
我能想到的就是键值对用shell操作比较麻烦
所以根据元素求下标是没有这种操作吗?
14楼 maxkvm 昨天22:42
我给你问了一下chatgpt
在shell中,可以使用数组来存储元素,并使用循环结构来查找元素对应的下标。 例如 ...
chatgpt完全帮不上忙,它说的还是根据下标求元素,这个不用它来回答,反过来根据元素求下标呢?
15楼 irony 昨天23:15
chatgpt完全帮不上忙,它说的还是根据下标求元素,这个不用它来回答,反过来根据元素求下标呢? ...
shell里已知数组为a=(14 25 39 46 52),那么如何获取元素39的数组下标?
在bash shell中,您可以使用以下脚本找到数组中特定值的索引:
a=(14 25 39 46 52)
value=39
index=-1
for i in "${!a[@]}"; do
if [ "${a}" -eq "$value" ]; then
index=$i
break
fi
done
echo "Index of $value is $index"
这个脚本首先定义了一个数组a和一个要查找的值value。我们将index初始化为-1,表示尚未找到该值。然后,我们用for循环遍历数组,并使用${!a[@]}获取数组的所有索引。当找到等于value的元素时,我们将index设置为当前索引并退出循环。最后,我们输出找到的索引。在这个例子中,它将输出Index of 39 is 2,因为39位于数组的第2个位置(索引从0开始)。
答案跟上边类似的,就是先把元素遍历出来然后再依次去比较,没想到还挺麻烦的,shell里的编程根本懒得记,以后都去问chatgpt好了
不同的shell和版本语法有不同的地方,更复杂的任务建议用python处理了。
申明:本文内容由网友收集分享,仅供学习参考使用。如文中内容侵犯到您的利益,请在文章下方留言,本站会第一时间进行处理。
评论前必须登录!
立即登录 注册