上级要的是根据不同的关键词产生不同的七位十六进制码,然后相同的关键词对于同一个十六进制码,用户提供的是excel文件,然后后面要再用对应的十六进制码进行转换

下面这个直接贴上代码

根据关键词产生对于的十六进制码

# -*- coding:utf-8 -*-
import xlwt;
import xlrd;
import random
from xlutils.copy import copy;
import time
print '''
#########################################
注,在转换过程当中需要关闭C:UsersAdministratorDesktop\aa.xls
这个文件,不然在转化过程当中会出现IO错误
根据不同关键字产生不同七位数的十六进制随机数
根据第一列不同的关键字产生不同的七位十六进制放在对于的第二列上面
读取和保存的文件都是在C:UsersAdministratorDesktop\aa.xls上进行操作的
'''
filename=raw_input("please input a file name:n")
outputfile=raw_input("please input a file name as save filen")
oldWb = xlrd.open_workbook(filename, formatting_info=True);##打开的文件地址
newWb = copy(oldWb);
newWs = newWb.get_sheet(0);
table = oldWb.sheets()[0]
nrows = table.nrows
ncols = table.ncols
# 产生七位16位进制随机数
def suj(zifu):
	ak='x'
	he=''
	for i in range(6):
		he+=random.choice(zifu)
	return ak+he
sjs=[]
gjz=[]
duiy={}
zifu=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']
for rownum in range(nrows):
	 row = table.row_values(rownum)
	 if row:
		while 1:
			if suj(zifu) not in sjs:
				sjs.append(suj(zifu))
				break
		if duiy.has_key(row[0]):##row[0]表示关键字在那一列,第一列则用0表示
			newWs.write(rownum,1,duiy[row[0]])##6表示生成的随机数在第二列写入,如果第二列有数据,则被覆盖
		else:
			duiy[row[0]]=sjs[rownum]
			newWs.write(rownum,1,sjs[rownum])
print "write new values ok";
newWb.save(outputfile);##保存的文件地址
print "save with same name ok";

然后下面这个是根据不同的十六进制码进行转换相应的关键词

# -*- coding:utf-8 -*-
import xlwt;
import xlrd;
from xlutils.copy import copy;
print '''
#########################################
注,在转换过程当中需要关闭需要转换的文件和转换后保存起来的文件
这两个文件,不然在转化过程当中会出现IO错误
根据不同的十六进制进行转换成关键字
读取的是C:UsersAdministratorDesktop\aa.xls这个上次进行转换的字典
然后十六进制是C:UsersAdministratorDesktop\bb.xls上的第二列
转换后的关键字保存在对应的第一列
保存文件为C:UsersAdministratorDesktop\bb.xls
'''
filename=raw_input("please input a file name as dict:n")
outputfile=raw_input("please input a file name as save filen")
oldWb = xlrd.open_workbook(filename, formatting_info=True);##打开的文件地址
table = oldWb.sheets()[0]
nrows = table.nrows
ncols = table.ncols
duiy={}
for rownum in range(nrows):
	row = table.row_values(rownum)
	if row:
		duiy[row[0]]=row[1]##存入上次的字典用于下面进行替换
oldWb1 = xlrd.open_workbook(outputfile, formatting_info=True);##打开的文件地址
newWb = copy(oldWb1)
newWs = newWb.get_sheet(0);
table1 = oldWb1.sheets()[0]
nrows1 = table1.nrows
ncols1 = table1.ncols
duiyk=duiy.keys()
duiyv=duiy.values()	
for rownum1 in range(nrows1):
	row1=table1.row_values(rownum1)
	if row1:
		for i in range(len(duiyv)):
			if row1[1]==duiyv[i]:
				newWs.write(rownum1,0,duiyk[i])
print "write new values ok";
newWb.save(outputfile);##保存的文件地址	
print "save with same name ok";

里面的大致功能都有,不过还是可以根据自己的需求进行二次开发!