当计算在tim上进行时,使用当前和以前的值将excel公式转换为python脚本

2024-04-26 02:25:21 发布

您现在位置:Python中文网/ 问答频道 /正文

原来的问题说错了。问题涉及三列: 第一个是值数组(1,2,3,…) 第二个是数组1乘以常数得到的数组。这个 第三个是一个数组,它是通过对max(array2的当前值,array3的前一个值)这样的函数进行操作而得到的,使得array3的第一个条目为空/不存在。因此,array3使用对自身的预先评估…这就是为什么array3的第一个条目不存在的原因。你知道吗

我没有成功地为第三个数组定义变量。错误,如“未解析引用”在引用自身定义中的同一变量时;我找到了避免“float is not subscriptable”错误的解决方法,将float乘以数组…但到目前为止,还无法完成解析变量中数组的当前值和先前值的任务。救命啊!你知道吗

最后一个问题:

constant1 = 2

array1 = [1, 2, 3, 4, 2...]

array2 = [i * constant1 for i in array1]

array3 = max(array2[0], array3[-1]) -----> please note correction of the problem statement...prior value of array3 is needed to evaluate current value of array3

但是array3产生了一个我无法解决的错误。不可订阅。。。你知道吗


Tags: of函数定义isvalue错误常数条目
1条回答
网友
1楼 · 发布于 2024-04-26 02:25:21

你必须建立一个新的数组并像这样计算每个成员。或者使用pandasnumpy这样的包来进行计算。你知道吗

constant1 = 2

array1 = [1, 2, 3, 4, 2]

array2 = [i * constant1 for i in array1]

array3 = [None,array2[0]]
for i in range(2,len(array1)):
    array3.append(max(array2[i], array3[i-1]))

print(array3)
#Prints [None, 4, 6, 8, 8]

您的代码array3=max(array1[0], array2[-1])输出一个值,即array1的第一个元素的最大值和array2的最后一个元素的最大值,因此它不可下标,请打印该值,然后您将看到。你知道吗

相关问题 更多 >