python使用openpyx 将xlsx导出为csv
1、安装openpyxl模块,直接使用pip3安装pip3 install openpyxl
2、打开python文件编辑器创建一个.py文件
3、这个表格是我随便弄出来的一个课表,代码参照以上课表
4、开始写代码:from openpyxl import load_workbookcsv_name='text.csv泌驾台佐39;#一个待写入的文件csv_file_name=open(csv_name,'w')#w为写入模式file_name='test.xlsx' #xlsx的文件名,这里与.py的文件同目录所以没加路径wb = load_workbook(file_name,'r')#加载这个xlsx文件#获取表名,返回的是一个列表ws=wb.get_sheet_names()#设置shheet1为工作组ws_ws = wb.get_sheet_by_name(ws[0])'''遍历C4-G11的表格,获取其中的内容,默认是先行后列,以下代码块实现的是将指定单元格的内容按行写入到csv文件中'''for row in ws_ws['C4:G11']: for cell in row: if cell.value==None: continue else: csv_file_name.write(cell.value+'\n')csv_file_name.close()该代码实现的效果如下图
5、以下为遍历星期一的上课内容的代码块,非完整代码比如在C4格的值为:”网络技术☆◇4-6,9-17(9,10)◇计算机162 ◇德玛西亚”我们只要其中的课程网络技术,和班级:计算机162这两个内容,那么我们可以分割单元格的值得到。代码如下:
6、#获取C4-C11每个单元格的内容,并用◇作为标志分割成了四部分。for row in ws_ws['C4:C11']: for cell in row: if cell.value==None: continue else: (lesson,weeks,my_class,teacher)=(cell.value).split('◇',3) print(lesson,teacher)#打印课程,和老师这两项