欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → handle_bar函数内append表格不会停止

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有1796人关注过本帖树形打印复制链接

主题:handle_bar函数内append表格不会停止

帅哥哟,离线,有人找我吗?
jinzita99
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:48 积分:0 威望:0 精华:0 注册:2020/11/17 0:13:51
handle_bar函数内append表格不会停止  发帖心情 Post By:2020/11/17 0:50:46 [只看该作者]

我要在handle_bar执行一个动作,新增一个数值到一个表格中,这个动作通过一个条件语句控制下次轮询的时候是否继续执行。结果发现每次轮询表格都会增加一个值,看似append每次轮询都执行,我在条件语句段落内添加了一个校验,发现条件控制是正常的,条件子句并没有执行,不知道为什么append会不断执行。

我把append动作移到外边一个函数中也一样,只有移到init才执行一次。请指点一下是哪里的问题?谢谢。


图片点击可在新窗口打开查看此主题相关图片如下:公式运行输出.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:策略运行设置.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
jinzita99
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:48 积分:0 威望:0 精华:0 注册:2020/11/17 0:13:51
  发帖心情 Post By:2020/11/17 1:01:07 [只看该作者]

下面是代码,完整没有删节。


import time

from PythonApi import *

def init(context):
    context.tb = [1,2,3,4,5]

def handle_bar(context,t=5):
    apple = 0
    if t == 5:
        apple += 1
        context.tb.append(1)
        t += 1

    print((t,apple,context.tb))



 回到顶部
帅哥哟,离线,有人找我吗?
jinzita99
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:48 积分:0 威望:0 精华:0 注册:2020/11/17 0:13:51
  发帖心情 Post By:2020/11/17 14:01:15 [只看该作者]

其他类似操作都有这个问题,例如:列表相加,列表extend.

还未有回复么?

 回到顶部
帅哥哟,离线,有人找我吗?
jinzita99
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:48 积分:0 威望:0 精华:0 注册:2020/11/17 0:13:51
  发帖心情 Post By:2020/11/17 16:22:51 [只看该作者]

找到原因了,我对函数参数初始设值的理解有误,公式中的t其实每次轮询都会重置为5,所以条件语句始终可以通过。已解决。

 回到顶部