Python教程

Python实现TD序列 , 最少代码

本文主要是介绍Python实现TD序列 , 最少代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
# 两个比较数字是始终相隔三个的,这也是TD的基本定义,而下面也就是list1中的第一个1和5比较, 然后是8和2比较,依次后移
list1 = (1, 2, 3, 4, 5, 8, 7, 6, 69, 2, 3, 4, 5, 6, 7, 8, 12, 123, 233, 445, 446, 6, 5, 4, 3)  #list1是测试样本
list2 = [0, 0, 0, 0]  # list2是结果存储用的,前4个无效用0占位置.因为TD定义是下标第n和n+4比较
top = 0  # 初始化上标
bot = 0  # 初始化下标
for i in range(4, len(list1)):
    if list1[i] > list1[i - 4]:
        top += 1
        bot *= 0
        list2.append(top)
    else:
        top *= 0
        bot += 1
        list2.append(-bot)
for c in list2:
    print(c)

  

  说明. list1是样本列表 , list2是为了存储TD结果而创建的, 两个表的长度是一样的

  这里面最关键的是,

  每次出现上TD连续, 则上TD累加1 , 下TD乘以0以便归零 , 

  当某一次出现上TD断了之后, 上TD乘以0,下TD加1 ,  任何数乘以0依然是0

  所以,断了就会重新来过,

  下面是代码运行结果! ! !

  

 

这篇关于Python实现TD序列 , 最少代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!