import xlrd
#打開(kāi)excel文件
#返回表的名字
# names = data.sheet_names()
# print (names)
# nrows = table.nrows? #獲取該sheet中的有效行數(shù)
# print (nrows)
# jieguo = table.cell_value(1,2)? #返回單元格中的數(shù)據(jù)
# 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
#處理列表奇數(shù)偶數(shù)
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
#獲得所有結(jié)果的數(shù)組函數(shù)
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
#判斷連續(xù)出現(xiàn)的次數(shù)
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))
#判斷大小的數(shù)據(jù) 0
? ? allStrdx= doHeBing(bigStr[0])
# 判斷奇偶數(shù)的數(shù)據(jù) 1
? ? allStrjo= doHeBing(bigStr[1])
print(allStrdx[1])
for iin range(0,10):
? ? ? ? doPanduan(allStrdx[i])
doPanduan(allStrjo[i])