#coding:utf-8
#导入相应模块
import csv,xlwt,sys,os,fnmatch,xlrd
from xlutils.copy import copy #对xls文件中的绝对值数据求最大值并列表
def max_excel(excel):
rb1=xlrd.open_workbook(excel)
#sheet0=rb1.sheets()[1]
wb1=copy(rb1)
#sheet页通过sheet名称得到的才能获取行数和列数,但是不能进行写操作,通过下标获得的sheet可以进行写操作,但是不能获得行数和列数
sheet0=rb1.sheet_by_name("Absolute")
sheet3=wb1.get_sheet(2)
nrows1=sheet0.nrows
ncols1=sheet0.ncols
for k in range(0,ncols1,):
sheet3.write(0,k,u'炸点%d' %(k+1))
cols = sheet0.col_values(k)
cmax=max(cols[1:])
sheet3.write(1,k, cmax)
wb1.save(excel) #对xls文件中的data数据求绝对值
def abs_excel(excel):
#print "3"
rb=xlrd.open_workbook(excel)
#sheet=rb.sheets()[0]
wb=copy(rb)
sheet = rb.sheet_by_name("data")
#print sheet
sheet2=wb.get_sheet(1)
nrows=sheet.nrows
ncols=sheet.ncols
for i in range(nrows):
for j in range(ncols):
w=sheet.cell(i,j).value
if (i==0):
sheet2.write(i,j,w)
else:
v = float(w)
sheet2.write(i,j,abs(v))
wb.save(excel)
max_excel(excel) #另存为xls文件
def ex_file(mycsvfile):
csvfile = open(mycsvfile,"rb")
#csvfile = open("test.csv","rb")
#新建excel文件
myexcel = xlwt.Workbook()
#新建sheet页
mysheet1= myexcel.add_sheet("data")
mysheet2= myexcel.add_sheet("Absolute")
mysheet3= myexcel.add_sheet("MAX")
#获取csv的文件名
portion = os.path.splitext(mycsvfile)
#读取csv中文件信息
reader = csv.reader(csvfile,dialect='excel')
l = 0
#通过循环获取单行信息
for line in reader:
r = 0
#通过双重循环获取单个单元信息
for i in line:
#通过双重循环写入excel表格
mysheet1.write(l,r,i)
r+=1
l+=1
myexcel.save(portion[0]+".xls")
excel = portion[0]+".xls"
#print portion[0]+".xls"
abs_excel(excel) def iterfindfiles(path, fnexp):
for root, dirs, files in os.walk(path):
for filename in fnmatch.filter(files, fnexp):
yield os.path.join(root, filename) #批量处理
if __name__=="__main__":
mypath=raw_input("Please enter a path:")
myfnexp='*.csv'
#print 1
for filename in iterfindfiles(mypath,myfnexp):
#print filename
ex_file(filename)
#abs_excel(filename)
#max_excel(filename)
raw_input ('please enter to exit')

最后可以通过 python pyinstaller --console --onefile  绝对路径\py文件.py  命令生产成对应的exe文件。

python操作csv-xls完善后的代码的更多相关文章

  1. 数学建模之Python操作csv文件

    1.用Python通过csv文件里面的某一列,形成键值,然后统计键在其他列出现的次数. import pandas as pd import numpy as np import csv import ...

  2. Python 操作csv和excel表格

    1. 操作csv表格 使用的库 csv 1. csv文件里读取数据 代码 1. 以列表形式打开 import csv f = open('csv_test.csv', 'r') # 打开csv文件 c ...

  3. python操作csv和excel文件

    1.操作csv文件 1).读取文件 import csv f=open("test.csv",'r') t_text=csv.reader(f) for t,i in t_text ...

  4. Python操作csv文件

    1.什么是csv文件 The so-called CSV (Comma Separated Values) format is the most common import and export fo ...

  5. Python操作CSV和Excel

    概述 csv是最通用的文件格式,本质是文本文件,用记事本即可打开.同一行中每个字段间用逗号分隔,在csv中显示的是在不同单元格中,在记事本中显示的是一行中用逗号分隔. xls是excel专用格式,是二 ...

  6. python操作csv

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件的写入(按行写入) import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很 ...

  7. python操作MySQL数据库报错问题解决

    编写好Python操作数据库的脚本后,运行报错如下: 报错1:“AttributeError: 'NoneType' object has no attribute 'encoding'” 解决办法: ...

  8. python操作三大主流数据库(6)python操作mysql⑥新闻管理后台功能的完善(增、ajax异步删除新闻、改、查)

    python操作mysql⑥新闻管理后台功能的完善(增.删.改.查)安装表单验证D:\python\python_mysql_redis_mongodb\version02>pip instal ...

  9. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

随机推荐

  1. js验证身份证格式

    (function(){ Validate={ data:{ // 加权因子 Wi : [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 ...

  2. [XMPP]简易的聊天室实现[二](使用CocoaAsyncSocket)

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  3. c# 大数据量比较时-方案

    1.当面临千万条数据量的比较时,从技术的角度来说应该用泛型键值(c#键值由于用了散列算法速度很快).例如前几天我需要查的是 航空公司.出发.到达.返点可以将 航空公司-出发-到达做一个键,返点作为值. ...

  4. js void运用

    谈谈Javascript中的void操作符 http://segmentfault.com/a/1190000000474941 总结: void有如下作用: 通过采用void 0取undefined ...

  5. BZOJ NOI十连测 第一测 T1

    思路:首先考虑t=1的情况,t等于1,那么所有位置的颜色相同,我们不用考虑概率的问题,那么,k+d*x在模d下都相等,我们考虑预处理一个数组s[i][j],代表d为i,起始位置为j的等差数列的和,这个 ...

  6. 2015第10周三jquery ui position

    jQuery UI API - .position() 所属类别 方法重载(Method Overrides) | 方法(Methods) | 实用工具(Utilities) 用法 描述:相对另一个元 ...

  7. cf478B Random Teams

    B. Random Teams time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...

  8. 学DSP(二):目标芯片28335,GO!

    28335开发板有了,之前没有用过TI的片子,还是先看看这个东西是啥东西. 进入28335的中文网页: http://www.ti.com.cn/product/cn/tms320f28335    ...

  9. UESTC_Tournament CDOJ 124

    A sports company is planning to advertise in a tournament. It is a single round-robin tournament, th ...

  10. Kth Smallest Element in Unsorted Array

    (referrence: GeeksforGeeks, Kth Largest Element in Array) This is a common algorithm problem appeari ...