数组函数+split函数:if(len(INDEXOFARRAY(split($$$,‘,‘),1))==0,‘‘,TOIMAGE(INDEXOFARRAY(split($$$,‘,‘),1)))

if(len(INDEXOFARRAY(split($ , ′ , ′ ) , 1 ) ) = = 0 , ′ ′ , T O I M A G E ( I N D E X O F A R R A Y ( s p l i t ( ,','),1))==0,'',TOIMAGE(INDEXOFARRAY(split( ,,),1))==0,,TOIMAGE(INDEXOFARRAY(split($,‘,’),1)))
说明,将几个图片路迳以‘,’分开存在一个字段中,然后在报表中分几个图片显示:

**
SPLIT(String1,String2)**:傳回由 String2 分割 String1 組成的字串陣列。

String1:以雙引號表示的字串。

String2:以雙引號表示的分隔符。例如逗號","。

注:

如果只有一個參數,則傳回一個錯誤提示。

如果有多個參數,則只有前兩個起作用。

使用方式:

SPLIT(“hello,world,yes”,“,”) = [“hello”,“world”,“yes”]。

SPLIT(“this is very good”," ") = [“this”,“is”,“very”,“good”]。

web报表工具finereport常用函数的用法总结(数组函数)**
ADD2ARRAY

ADDARRAY(array,insertArray, start):在数组第start个位置插入insertArray中的所有元素,再返回该数组。

示例:

ADDARRAY([3,4, 1, 5, 7], [23, 43, 22], 3)返回[3, 4, 23, 43, 22, 1, 5, 7].

ADDARRAY([3,4, 1, 5, 7], “测试”, 3)返回[3, 4, “测试”, 1, 5, 7].

注意:

如果start为小于1的数或者不写start参数,则默认从数组的第一位开始插入数组元素

ARRAY

ARRAY(arg1,arg2…):返回一个由arg1,arg2,…组成的数组.

arg1,arg2,…:字符串或者数字.

示例:

ARRAY(“hello”)= [“hello”].

ARRAY(“hello”,“world”)= [“hello”,“world”].

ARRAY(“hello”,98)= [“hello”,98].

ARRAY(67,98)= [67,98].

GETARRAYELEMENT

GETARRAYELEMENT(array,index):函数返回数组array的第index个元素。

示例:

String[]array = {“a”, “b”, “c”, “d”}

GETARRAYELEMENT(array,3)等于c.

GETARRAYELEMENT(array,1)等于a.

GREPARRAY

GREPARRAY(array,fn):函数(返回true或者false)是条件,过滤此数组,最后形成一个新数组。

示例:

GREPARRAY([3,4,2,3,6,8,7],“item != 3”)等于[4,2,6,8,7]

注意:该函数的第二个参数是一个字符串。

INARRAY

INARRAY(co,array):返回co在数组array中的位置,如果co不在array中,则返回0.

示例:

String[]arr = {“a”,“b”,“c”,“d”}

那么INARRAY(“b”, arr)等于2.

INDEX

INDEX(key,val1,val2,…):返回key在val1,val2,…所组成的序列中的位置,不存在于序列中则返回参数的个数.

备注:

key和valn可以是任意类型

示例:

INDEX(2,2)等于1。

INDEX(2,1,2)等于2。

INDEX(2,4,5,6)等于4。

INDEX(“b”,“b”,“o”,“y”)等于1。

INDEXOFARRAY

INDEXOFARRAY(array,index):返回数组array的第index个元素。

示例:

INDEXOFARRAY([“第一个”, “第二个”, “第三个”], 2)返回"第二个"。

MAPARRAY

MAPARRAY(array,fn):把一个数组中的项目转换到另一个数组中。

array(Array):要转换的数组

fn(Function):处理数组项目的函数

示例:

MAPARRAY([3,4,2,3,6,8,7],“item != 3”)等于[false,true,true,false,true,true,true].

RANGE

RANGE(from,to,step)函数表示从整数from开始,以step为每一步的示例:直到整数to的一个数字序列。

备注:

RANGE函数有三种参数形式

RANGE(to),缺省默认from为1,step为1

RANGE(from,to),默认的step为1

RANGE(from,to,step),个参数的情况参照上面的注释

示例:

RANGE(4)返回[1,2,3,4].

RANGE(-5)返回[].

RANGE(-1,3)返回[-1,0,1,2,3].

RANGE(0,5)返回[0,1,2,3,4,5].

RANGE(6,-1,-2)返回[6,4,2,0].

RANGE(4,1,1)返回[].

REMOVEARRAY

REMOVEARRAY(array,start, deleteCount):从数组array中删除从第start个元素开始的deleteCount个数组元素,并返回删除后的数组。

示例:

REMOVEARRAY([3,4, 4, 2, 6, 7, 87], 4, 2)返回[3, 4, 4, 7, 87].

REVERSEARRAY

REVERSEARRAY(array):返回数组array的倒序数组。

示例:

REVERSEARRAY([“第一个”, “第二个”, “第三个”])返回[“第三个”, “第二个”, “第一个”].

SLICEARRAY

SLICEARRAY(array,start, end):返回数组从第start个到第end个元素(包括第end个元素)。

示例:

SLICEARRAY([3,4, 4, 5, 1, 5, 7], 3, 6)返回[4, 5, 1, 5].

当不使用end参数时,返回从start开始到数组结束之间的元素。

SLICEARRAY([3,4, 4, 5, 1, 5, 7], 3)返回[4, 5, 1, 5, 7].

SORTARRAY

SORTARRAY(array):返回数组array排过序的数组。

示例:

SORTARRAY([3,4, 4, 5, 1, 5, 7])返回[1, 3, 4, 4, 5, 5, 7].

注意:数组array的元素类型必须一样,并且要可比较。

UNIQUEARRAY

UNIQUEARRAY(array):去掉数组array中的重复元素。

示例:

UNIQUEARRAY([14,2, 3, 4, 3, 2, 5, 6, 2, 7, 9, 12, 3])返回[14, 2, 3, 4, 5, 6, 7, 9, 12].

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这段代码可能有一些语法错误和逻辑问题,我来帮你解释一下: - 第1行打开一个名为 "sensor-data.txt" 的文件,但缺少了 r.read(),应该是 r.read()。 - 第2行应该是 r.close(),需要加上括号。 - 第3行使用了 replace() 函数,但应该在 r.read() 后面使用,而不是在 r 上使用。另外,应该将 "\n" 改成 "\r\n",因为在不同操作系统上,文本文件的换行符可能不同。 - 第4行将 r 分割成了一个列表,但没有将其赋值给 r,应该是 r = r.split()。 - 第5行初始化变量 i 和字典 z。 - 第6行将 i 加上 6 并将当前元素添加到字典 z 中。 - 第7-13行使用循环找到最大值 c 和最小值 x。 - 第14-20行使用循环计算平均值 M,并打印出最大值、最小值和平均值。 这段代码还有一些问题: - 第5行应该将 z 初始化为空字典,而不是空列表。 - 第7行应该将 a 和 c 的值交换,因为 a 存储的是当前元素,c 存储的是最大值。 - 第11行应该将 b 和 x 的值交换,因为 b 存储的是当前元素,x 存储的是最小值。 - 第16行应该将变量 m 初始化为 0,否则会出现 NameError。 - 第17行应该将变量 l 初始化为列表长度 len(z),否则会出现 NameError。 - 第18行应该将变量 M 初始化为 0,否则会出现 NameError。 修改后的代码如下: ``` r = open('sensor-data.txt').read() r = r.replace("\r\n","") r = r.split() z = {} i = 5 for item in r: z[i] = float(item) i += 6 c = float('-inf') x = float('inf') for value in z.values(): if value > c: c = value if value < x: x = value m = 0 for value in z.values(): m += value l = len(z) M = m / l print("最大值:", c) print("最小值:", x) print("平均值:", M) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值