将Pinescript转换为Python Python的系列下标是什么?

2024-09-28 03:17:05 发布

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

我正在尝试将下面的Pinescript函数转换为Python

xrf(values, length) =>
    r_val = float(na)
    if length >= 1
        for i = 0 to length by 1
            if na(r_val) or not na(values[i])
                r_val  :=  values[i]
                r_val
    r_val

到目前为止,我尝试将其转换为Python,如下所示

import math

#Function 1
def xrf(values, length):
    r_val = float("NaN")
    if length >= 1:
        for i in range(0, length):
            if math.isnan(r_val) or not math.isnan(values[I]):
               r_val = values[i]

在读取math.isnan(值[i])的位之前,代码工作正常。特别是,有问题的部分似乎是方括号和i

因此,我想知道是否有人知道Python的“系列下标”是什么——这就是我正在努力转换的运算符

下面是一段小代码中的函数示例,其中包含返回的错误消息

import examplemodule
from examplemodule import xrf

variable = xrf(6,50)

print(variable)

此返回的错误消息是

Traceback (most recent call last):
 

  File "mypath/script.py", line 4, in <module>
    variable = xrf(6,50)
  File "mypath/examplemodule.py", line 9, in xrf
    r_val = values[i]
TypeError: 'int' object is not subscriptable

Tags: 函数inimportifnotmathvalfloat

热门问题