Python读写excel练习_去除excel中乱码行,并添加列

本文转自https://www.cnblogs.com/dongrui624/p/9054085.html,谢谢

需求:
把app_student.xls里面的数据,
1、如果这一行数据里面有乱码(及包含?),那么就删掉
2、再加上一列,是否毕业
3、如果班级是天蝎座的话,毕业这一列写成毕业
4、其他班级的写成未毕业

原始数据:

实现:
复制代码
import xlrd,xlwt
EXCEL_NAME = ‘app_student.xls’
def delete_messy_code(excel_name): #删除乱码
book = xlrd.open_workbook(excel_name)
sheet = book.sheet_by_index(0)
data = []
for i in range(sheet.nrows):
if ‘?’ in str(sheet.row_values(i)):#仅将没有乱码的数据加入data[]
continue
else:
data.append(sheet.row_values(i))
return data

def update_col(data): #增加列,并填入是否毕业
for d in data:
if d[5] == ‘grade’:
d.append(‘是否毕业’)
elif d[5] == ‘天蝎座’:
d.append(‘毕业’)
else:
d.append(‘未毕业’)
return data

def wt_excel(excel_name): #将处理后的结果写入Excel
rb = xlwt.Workbook()
rbs =rb.add_sheet(‘sheet1’)
data = delete_messy_code(excel_name)
row = 0
for field in update_col(data):
for col, f in enumerate(field):
rbs.write(row,col,f)
row += 1
rb.save(excel_name)

wt_excel(EXCEL_NAME)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值