Beispiel #1
0
    def fixed_kill_one_tail(self, jo):
        """
        执行杀1尾公式 (90.67%)
        :param jo:  
        :return: 
        """
        r = 0
        killnexttailSeq = ''
        for index in range(len(jo)):

            killnexttail = str(jo[index][1]['six_number']['1']['number'])[1]

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                print("=>预测杀: [" + killnexttail + "]尾")
                killnexttailSeq = Common.getnumber(killnexttail, 't')
                print("=>对应号: " + str(killnexttailSeq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break

            nexttail = str(jo[nextIndex][1]['unusual_number']['number'])[1]

            if killnexttail != nexttail:
                r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killnexttail + "]尾 " + \
                      "开[" + nexttail + "] " + \
                      Common.e3p([killnexttail], nexttail))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killnexttailSeq
Beispiel #2
0
    def kill_color_bo_formula(self, jo, sort):
        """
        杀波色 (75.0%)
        :param jo: 
        :param sort: 
        :return: 
        """
        r = 0
        killcolorboseq = []
        for index in range(len(jo)):
            swq = data.number_data
            sn = self.sortnumber.sort_number(jo[index], sort)

            killcolorbo = Common.color(fr.funclr(sn))
            killcolorboseq = Common.getnumber(killcolorbo, 'c')

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                print("=>预测杀: [" + killcolorbo + "]")
                print("=>对应号: " + str(killcolorboseq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break
                pass

            nextnumber = jo[nextIndex][1]['unusual_number']['number']  # 下期特码
            nextcolor = Common.etoc(jo[nextIndex][1]['unusual_number']['color'])  # 特码波色
            swq = list(set(swq) - (set(killcolorboseq)))

            try:
                if swq.index(int(nextnumber)) >= 0:
                    r = r + 1
            except:
                pass

            # if killcolorbo != nextcolor:
            #     r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killcolorbo + "] " + \
                      "开[" + nextcolor + "] " + \
                      Common.e3p([killcolorbo], nextcolor))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killcolorboseq
Beispiel #3
0
def formulakilltail(sn):
    """
    公式杀尾
    :return: 
    """
    # { 'pid': 33631, 'exp': {'offset': 4, 'expression': '0h 1t 3t 4h 5a', 'sort': 'nosize'}, 'rat': 92.142 }
    formula = {
        "expression": "0h 1t 3t 4h 5a",
        "offset": 4,
        "sorttype": "nosize"
    }

    killtail = Common.tail(
        Common.formula_expression_hander(
            formula['expression'],
            sortnumber.sort_number(sn, formula['sorttype']),
            formula['offset'])[0])
    return Common.getnumber(str(killtail), 't')
Beispiel #4
0
    def kill_head_formula(self, jo, sort):
        """
        执行杀1头公式 (90.0%)
        :param jo: 年集合
        :param sort: 排序方式 默认根据落球顺序进行排序
        :return: 返回最新一期杀头数字
        """
        r = 0
        killnextheadseq = []
        for index in range(len(jo)):

            sn = self.sortnumber.sort_number(jo[index], sort)
            killnexthead = str(Common.headavg(fr.funhed(sn)))

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                print("=>预测杀: [" + killnexthead + "]头")
                killnextheadseq = Common.getnumber(killnexthead, 'h')
                print("=>对应号: " + str(killnextheadseq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break

            nextnumber = jo[nextIndex][1]['unusual_number']['number']  # 下期特码
            nexthead = str(nextnumber).zfill(2)[0]  # 下期特码头

            if killnexthead != nexthead:
                r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killnexthead + "]头 " + \
                      "开[" + nextnumber + "] " + \
                      Common.e3p([killnexthead], nexthead))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killnextheadseq
Beispiel #5
0
    def kill_single_or_double(self, jo, sort):
        """
        杀单双 (62%)
        :param jo: 
        :param sort: 推荐按照落球顺序 nosize
        :return: 
        """
        r = 0
        killsingledoubleseq = []
        for index in range(len(jo)):

            sn = self.sortnumber.sort_number(jo[index], sort)
            killsingledouble = Common.singleordouble(fr.funeob(sn))

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                killsingledoubleseq = Common.getnumber(killsingledouble, 's')
                print("=>预测杀 [" + killsingledouble + "]")
                print("=>对应号: " + str(killsingledoubleseq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break

            nextnumber = jo[nextIndex][1]['unusual_number']['number']  # 下期特码
            nextsgledu = Common.nextsingleordouble(nextnumber)

            if killsingledouble != nextsgledu:
                r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killsingledouble + "] " + \
                      "开[" + nextsgledu + "] " + \
                      Common.e3p([killsingledouble], nextsgledu))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killsingledoubleseq
Beispiel #6
0
    def fixed_kill_one_zodiac_1(self, jo):
        """
        # 根据指定的序列图杀一肖 
        :param jo:  
        :return: 
        """
        r = 0
        killnextzodiacSeq = []
        for index in range(len(jo)):
            # 根据本期特尾获取下期将要杀掉的生肖
            killnextzodiac = Common.get_next_kill_zodiac(
                str(jo[index][1]['unusual_number']['number'])[1])

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                killnextzodiacSeq = Common.getnumber(killnextzodiac, 'z')
                print("=>预测杀: [" + killnextzodiac + "]")
                print("=>对应号: " + str(killnextzodiacSeq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break

            # 下期实际生肖
            nextzodiac = jo[nextIndex][1]['unusual_number']['zodiac']

            if killnextzodiac != nextzodiac:
                r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killnextzodiac + "] " + \
                      "开[" + nextzodiac + "] " + \
                      Common.e3p([killnextzodiac], nextzodiac))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killnextzodiacSeq
Beispiel #7
0
    def fixed_kill_one_zodiac_2(self, jo):
        """
        根据指定的第三个生肖杀一肖 (94.67%)    
        :param jo: 
        :return: 
        """
        r = 0
        killnextzodiacSeq = []
        for index in range(len(jo)):

            killnextzodiac = jo[index][1]['six_number']['3']['zodiac']

            l = len(jo) - self.outp
            if index == len(jo) - 1:
                print("=>预测杀: [" + killnextzodiac + "]")
                killnextzodiacSeq = Common.getnumber(killnextzodiac, 'z')
                print("=>对应号: " + str(killnextzodiacSeq))
            nextIndex = index + 1
            if nextIndex >= len(jo):
                break

            # 下期实际生肖
            nextzodiac = jo[nextIndex][1]['unusual_number']['zodiac']

            if killnextzodiac != nextzodiac:
                r = r + 1

            if index > l - 2:
                print(str(index + 2).zfill(3) + "期: " + \
                      "杀[" + killnextzodiac + "] " + \
                      "开[" + nextzodiac + "] " + \
                      Common.e3p([killnextzodiac], nextzodiac))

        print('=>正确数: ' + str(r) + '次')
        print('=>正确率: ' + str(round((r / (len(jo) - 1)) * 100.0, 2)) + "%")
        return killnextzodiacSeq