美文网首页
daxiao jiou

daxiao jiou

作者: 李多鱼8 | 来源:发表于2019-05-06 14:59 被阅读0次

    import xlrd

    #打开excel文件

    #返回表的名字

    # names = data.sheet_names()

    # print (names)

    # nrows = table.nrows  #获取该sheet中的有效行数

    # print (nrows)

    # jieguo = table.cell_value(1,2)  #返回单元格中的数据

    # print(jieguo)

    #处理列表,大小

    def doLieBiao(shuju):

        doStr= []

    for iin range(0,10):

            if(int(shuju[i])< 6):

                bijiao= 'x'

                doStr.append(bijiao)

    else:

                bijiao= 'd'

                doStr.append(bijiao)

    #print(doStr)

        return doStr

    #处理列表奇数偶数

    def doJiOu(shuju):

        doStr= []

    for iin range(0,10):

            if(int(shuju[i])% 2 != 0):

                bijiao= 'j'

                doStr.append(bijiao)

    else:

                bijiao= 'o'

                doStr.append(bijiao)

    #print(doStr)

        return doStr

    #获得所有结果的数组函数

    def getAll():

        filename= "E://XYFT.xls"

        data= xlrd.open_workbook(filename)

    table= data.sheets()[0]

    bigStr= []

    jiOuStr= []

    for iin range(21,201):

            huoqu= table.cell_value(i,2)

    #print(huoqu)

            huoqu1= huoqu.split(',')

    #print(huoqu1)

            bigStr.append(doLieBiao(huoqu1))

    jiOuStr.append(doJiOu(huoqu1))

    return bigStr,jiOuStr

    #处理大小并合并成字符串

    def doHeBing(bigStr):

        oneStr=''

        twoStr=''

        threeStr= ''

        fourStr= ''

        fiveStr= ''

        sixStr= ''

        sevenStr= ''

        eightStr= ''

        nineStr= ''

        tenStr= ''

        for kin range(0,180):

            #rint (bigStr[k][j])

            oneStr= oneStr+ bigStr[k][0]

    twoStr= twoStr+ bigStr[k][1]

    threeStr= threeStr+ bigStr[k][2]

    fourStr= fourStr+ bigStr[k][3]

    fiveStr= fiveStr+ bigStr[k][4]

    sixStr= sixStr+ bigStr[k][5]

    sevenStr= sevenStr+ bigStr[k][6]

    eightStr= eightStr+ bigStr[k][7]

    nineStr= nineStr+ bigStr[k][8]

    tenStr= tenStr+ bigStr[k][9]

    #print(twoStr)

    #print (len(oneStr))

        return oneStr,twoStr,threeStr,fourStr,fiveStr,sixStr,sevenStr,eightStr,nineStr,tenStr

    #判断连续出现的次数

    def doPanduan(str):

        if 'j' in str:

            str= str.replace('j','d')

    str= str.replace('o','x')

    twelveNumd= str.count('dddddddddddd')

    twelveNumx= str.count('xxxxxxxxxxxx')

    twelveNum= twelveNumx+ twelveNumd

    elevenNumd= str.count('ddddddddddd')

    elevenNumx= str.count('xxxxxxxxxxx')

    elevenNum= elevenNumx+ elevenNumd- twelveNum* 1

        tenNumd= str.count('dddddddddd')

    tenNumx= str.count('xxxxxxxxxx')

    tenNum= tenNumx+ tenNumd- twelveNum* 1 - elevenNum* 1

        nineNumd= str.count('ddddddddd')

    nineNumx= str.count('xxxxxxxxx')

    nineNum= nineNumx+ nineNumd- twelveNum* 1 - elevenNum* 1 - tenNum*1

        eightNumd= str.count('dddddddd')

    eightNumx= str.count('xxxxxxxx')

    eightNum= eightNumx+ eightNumd- twelveNum* 1 - elevenNum* 1 - tenNum*1-nineNum*1

        sevenNumd= str.count('ddddddd')

    sevenNumx= str.count('xxxxxxx')

    sevenNum= sevenNumx+ sevenNumd- twelveNum* 1 - elevenNum* 1 - tenNum*1-nineNum*1-eightNum*1

        sixNumd= str.count('dddddd')

    sixNumx= str.count('xxxxxx')

    sixNum= sixNumx+ sixNumd- twelveNum* 2 - elevenNum* 1 - tenNum*1-nineNum*1-eightNum*1-1*sevenNum

    fiveNumd= str.count('ddddd')

    fiveNumx= str.count('xxxxx')

    fiveNum= fiveNumx+ fiveNumd- twelveNum* 2 - elevenNum* 2 - tenNum*2-nineNum*1-eightNum*1-1*sevenNum-1*sixNum

    fourNumd= str.count('dddd')

    fourNumx= str.count('xxxx')

    fourNum= fourNumx+ fourNumd- twelveNum* 3 - elevenNum* 2 - tenNum*2-nineNum*2-eightNum*2-1*sevenNum-1*sixNum-fiveNum*1

        threeNumd= str.count('ddd')

    threeNumx= str.count('xxx')

    threeNum= threeNumx+ threeNumd- twelveNum* 4 - elevenNum* 3 - tenNum*3-nineNum*3-eightNum*2-2*sevenNum-2*sixNum-fiveNum*1-fourNum*1

        twoNumd= str.count('dd')

    twoNumx= str.count('xx')

    twoNum= twoNumx+ twoNumd- twelveNum* 6 - elevenNum* 5 - tenNum*5-nineNum*4-eightNum*4-3*sevenNum-3*sixNum-fiveNum*2-fourNum*2-threeNum*1

        oneNumd= str.count('d')

    oneNumx= str.count('x')

    oneNum= oneNumx+ oneNumd- twelveNum*12 - elevenNum*11 - tenNum*10-nineNum*9-eightNum*8-7*sevenNum-6*sixNum-fiveNum*5-fourNum*4-threeNum*3 \

    -twoNum*2

        print(twelveNum,elevenNum,tenNum,nineNum,eightNum,sevenNum,sixNum,fiveNum,fourNum,threeNum,twoNum,oneNum)

    if __name__== '__main__':

        bigStr= getAll()

    #print(len(bigStr))

    #判断大小的数据 0

        allStrdx= doHeBing(bigStr[0])

    # 判断奇偶数的数据 1

        allStrjo= doHeBing(bigStr[1])

    print(allStrdx[1])

    for iin range(0,10):

            doPanduan(allStrdx[i])

    doPanduan(allStrjo[i])

    相关文章

      网友评论

          本文标题:daxiao jiou

          本文链接:https://www.haomeiwen.com/subject/rnoroqtx.html