【Python怎么将Excel文件转为csv文件?Python实现Excel转csv的代码如何写】Excel文件和csv文件实际上都是以表格形式来保存数据的文件类型,而且这两个文件之间实际上都是可以使用Excel表格程序来打开的 。那下面这篇文章就会带来python实现Excel文件转为csv文件的详细代码示例和步骤解析,一起往下看看吧 。
文章插图
1.要同时对Excel文件和csv文件进行操作的话就需要导入三个内置模块,这三个模块的作用就是找到文件并且实现对它们的读写操作 。导入模块之后声明一个变量来保存转换后要生成的csv文件名称,并且定义一个函数来将指定文件路径下后缀名为xlsx和xls的Excel文件都给获取到,代码如下所示:
import xlrdimport csvimport oscsv_file_name = 'excel_to_csv.csv'def get_excel_list(): excel_file_list = [] file_list = os.listdir(os.getcwd()) for file_name in file_list: if file_name.endswith('xlsx') or file_name.endswith('xls'): excel_file_list.append(file_name) return excel_file_list2.在获取到了Excel文件之后并不能直接的将其转为csv文件,因为现在有多个Excel文件需要去进行处理 。那么第二步就是要将这些文件的表头,也就是列名都给去读取出来并且将它们统一转为小写形式,代码如下:
def get_excel_header(excel_name_for_header): workbook = xlrd.open_workbook(excel_name_for_header) table = workbook.sheet_by_index(0) row_value = [i.lower() for i in table.row_values(0)] return row_value3.在更改了所有Excel文件表头信息之后,就需要依次的读取Excel文件中的数据并且将它们放在列表内保存起来 。因为一个Excel文件可以有多个sheet工作表,在读取数据时还要通过for循环迭代的方式才可以进行操作,代码示例如下:
def read_excel(excel_name): workbook = xlrd.open_workbook(excel_name) table = workbook.sheet_by_index(0) nrows = table.nrows ncols = table.ncols for rows_read in range(1,nrows): row_value = [] for cols_read in range(ncols): ctype = table.cell(rows_read, cols_read).ctype nu_str = table.cell(rows_read, cols_read).value if ctype == 2: nu_str = int(nu_str) row_value.append(nu_str) yield row_value4.到了这一步就已经将所有的Excel表格数据都给取出来了,之所以使用yeild关键字的原因就在于需要依次返回每个工作表的数据 。第四步就是将返回来的数据写入到指定名称的csv文件之中了,代码示例如下:
def xlsx_to_csv(csv_file_name,row_value): with open(csv_file_name, 'a', encoding='utf-8',newline='') as f: write = csv.writer(f) write.writerow(row_value)
推荐阅读
- python如何解决爬虫访问频繁?python爬虫访问频繁怎么办?
- Python如何用Tkinter库画圆形和矩形?Python矩形怎么画
- 记事本怎么转换excel?记事本文件转换为Excel文件
- Python如何解压7z格式文件?Python解压7z文件用什么库
- 拼多多搜索推广怎么选关键词?选词方法有哪些?
- 淘宝基础优化怎么做?没流量会是什么原因?
- solidworks崩溃怎么恢复未保存文件?solidworks文件忘记保存怎么找回?
- 怎么在ppt中加入视频
- 怎么在ppt中加入背景音乐自动播放
- 怎么将ppt文件转换成word文档