一、統(tǒng)一薪資格式

1

2

3
薪資的類型一共有6種,把薪資統(tǒng)一到千/月,對薪資是一個范圍的數(shù)據(jù)分開放入2列(low_salary,high_salary),薪資只有一個值的放入low_salary
主要代碼內(nèi)容如下:
def Salary(path,table):
workbook = load_workbook(path)
sheet = workbook[table]
n = sheet.max_row
a = Fraction(10,12)#萬/年換算成千/月 先乘10再除以12
b = Fraction(20,1000)#每月工作20天
#6種薪資類型
k1 = "萬/月"
k2 = "千/月"
k3 = "萬/年"
k4 = "元/天"
k5 = "千以下/月"
k6 = "萬以下/年"
salarydic1 = {k1:10,k2:1,k3:a}#處理有“-”的數(shù)據(jù)
salarydic2 = {k4:b,k5:1,k6:a}#處理無“-”的數(shù)據(jù)
sheet.cell(1,2).value = "low_salary"
sheet.cell(1,3).value = "high_salary"
for i in range(2,n+1):
s = sheet.cell(i,1).value
if s:
if "-" in s:
for k in salarydic1:
if k in s:
slist = s.split("-")
low_salary = float(slist[0])*salarydic1[k]
high_salary = float(slist[1].replace(k,""))*salarydic1[k]
#print(round(low_salary,2),round(high_salary,2))
sheet.cell(i,2).value = round(low_salary,2)
sheet.cell(i,3).value = round(high_salary,2)
else:
for k in salarydic2:
if k in s:
low_salary = float(s.replace(k,""))*salarydic2[k]
#print(round(low_salary,2))
sheet.cell(i,2).value = round(low_salary,2)
workbook.save(path)

薪資處理結(jié)果
二、簡化所在行業(yè),取第一個逗號前的文本

行業(yè)顯示
主要代碼內(nèi)容如下:
def Companyfield(path,table):
workbook = load_workbook(path)
sheet = workbook[table]
n = sheet.max_row
sheet.cell(1,3).value = "new companyfield"
for i in range(2,n+1):
s = sheet.cell(i,2).value
if s:
if "," in s:
s = s.split(",")[0]
else:
s = s
sheet.cell(i,3).value = s
workbook.save(path)