array_function

Posted xiaofeng666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了array_function相关的知识,希望对你有一定的参考价值。

 1 [root@localhost array]# cat function_array.sh 
 2 #!/bin/bash
 3 
 4 num=(2 3 4)
 5 array() {
 6     echo "all parameters: $*"
 7     local newarray=(`echo $*`)        #其中的()为另外手动添加,满足数组赋值方式
 8     local i
 9     for ((i=0;i<$#;i++))
10     do
11         outarray[$i]=$(( ${newarray[$i]} * 5 ))
12     done
13     echo "${outarray[*]}"
14 }
15 
16 array ${num[*]}
17 [root@localhost array]# sh function_array.sh
18 all parameters: 2 3 4
19 10 15 20
20 [root@localhost array]# 
 1 [root@localhost array]# cat function_array2.sh 
 2 #!/bin/bash
 3 
 4 num=(2 3 4)
 5 array() {
 6     echo "all parameters: $*"
 7     echo
 8     local newarray=(`echo $*`)
 9     local i
10     for ((i=0;i<$#;i++))
11     do
12         outarray[$i]=$(( ${newarray[$i]} * 5 ))
13     done
14     echo "${outarray[*]}"
15 }
16 
17 #result=`array ${num[*]}`
18 #echo ${result[*]}
19 echo `array ${num[*]}`
20 [root@localhost array]# sh function_array2.sh
21 all parameters: 2 3 4 10 15 20            #输出格式不同,是由于``是在子shell中执行,然后将结果再输出导致。
22 [root@localhost array]# 

 

第二版:

 1 [root@localhost array]# cat function_array.sh
 2 #!/bin/bash
 3 
 4 num=(2 3 4)
 5 num2=(5 4 3)
 6 array() {
 7     echo "all parameters: $*"
 8     local newarray=(`echo $*`)
 9     local i
10     for ((i=0;i<$#;i++))
11     do
12         outarray[$i]=$(( ${newarray[$i]} * 5 ))
13     done
14     echo "${outarray[*]}"
15 }
16 
17 array ${num[*]}
18 array ${num2[*]}
19 [root@localhost array]# sh function_array.sh
20 all parameters: 2 3 4
21 10 15 20
22 all parameters: 5 4 3
23 25 20 15
24 [root@localhost array]# 

 

第三版:

 1 [root@localhost array]# cat function_array.sh
 2 #!/bin/bash
 3 
 4 num=(2 3 4)
 5 num2=(5 4 3)
 6 array() {
 7     echo "all parameters: $*"
 8     local newarray=(`echo $*`)
 9     local i
10     for ((i=0;i<$#;i++))
11     do
12         newarray[$i]=$(( ${newarray[$i]} * 5 ))    #运算后将新值重新赋给原有变量,覆盖原有变量值,无需重新定义新数组(思想)
13     done
14     echo "${newarray[*]}"
15 }
16 
17 array ${num[*]}
18 array ${num2[*]}
19 [root@localhost array]# sh function_array.sh
20 all parameters: 2 3 4
21 10 15 20
22 all parameters: 5 4 3
23 25 20 15

 

数组赋值给函数array,在函数中定义新的数组,并将数组的运算结果赋值给令一个数组,通过函数将数组的值给输出。

以上是关于array_function的主要内容,如果未能解决你的问题,请参考以下文章

AttributeError:类型对象“numpy.ndarray”没有属性“__array_function__”

微信小程序代码片段

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板