码迷,mamicode.com
首页 > 编程语言 > 详细

Python脚本——excel文件按列导出

时间:2017-09-15 16:36:18      阅读:421      评论:0      收藏:0      [点我收藏+]

标签:open   number   截取   重复   move   logs   raw   文件中   error   

将一个excel文件每一列的内容分别导出到一个txt文件中,txt文件名为excel的列名。

 1 #!/usr/bin/python
 2 # -*- coding: UTF-8 -*-
 3 import xlrd                                                      #导入xlrd模块
 4 
 5 
 6 def is_number(s):                                                #判断是否为数字
 7     try:
 8         float(s)
 9         return True                                              #是数字返回True
10     except ValueError:
11         pass
12 
13 def main():
14     workbook = xlrd.open_workbook(excel_path)                    #打开xlsx文件
15     sheet = workbook.sheet_by_index(0)
16     ncols = sheet.ncols                                          #获取工作表列数       
17     for i in range(0,ncols):
18         l1 = sheet.col_values(i)                                 #将每一列数据存放在列表中
19         name = sheet.cell(0,i).value                             #获取列名
20         if is_number(name) == True:                              #判断name是否为数字
21             txt = open(txt_path + str(name) + .txt,w)        #新建文本文件
22         else:
23             txt = open(txt_path + name + .txt,w)
24         while ‘‘ in l1:                                          #列表元素去空
25             l1.remove(‘‘)
26         l2 = l1[1:]                                              #从第二个元素开始截取列表
27         new_list = list(set(l2))                                 #用集合过滤重复元素
28         new_list.sort(key = l2.index)                            #将新列表元素按原列表元素排序
29         for q in new_list:                                       #将列表中的元素写入文本文件中
30             if is_number(q) == True:                             #判断列表中元素是否为数字
31                 txt.write(str(q) + \n)
32             else:
33                 txt.write(q.encode(utf-8) + \n)
34         txt.close()                                              #关闭文本文件
35 if __name__ ==__main__:
36     excel_path = raw_input (unicode(请输入excel文件路径:,utf-8).encode(gbk))         #输入excel文件路径
37     txt_path = raw_input (unicode(请输入txt文件保存路径:,utf-8).encode(gbk))         #输入txt文件保存目录
38     main()

 

Python脚本——excel文件按列导出

标签:open   number   截取   重复   move   logs   raw   文件中   error   

原文地址:http://www.cnblogs.com/xpymirage/p/7526804.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!