python操作csv-xls完善后的代码
#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完善后的代码的更多相关文章
- 数学建模之Python操作csv文件
1.用Python通过csv文件里面的某一列,形成键值,然后统计键在其他列出现的次数. import pandas as pd import numpy as np import csv import ...
- Python 操作csv和excel表格
1. 操作csv表格 使用的库 csv 1. csv文件里读取数据 代码 1. 以列表形式打开 import csv f = open('csv_test.csv', 'r') # 打开csv文件 c ...
- python操作csv和excel文件
1.操作csv文件 1).读取文件 import csv f=open("test.csv",'r') t_text=csv.reader(f) for t,i in t_text ...
- Python操作csv文件
1.什么是csv文件 The so-called CSV (Comma Separated Values) format is the most common import and export fo ...
- Python操作CSV和Excel
概述 csv是最通用的文件格式,本质是文本文件,用记事本即可打开.同一行中每个字段间用逗号分隔,在csv中显示的是在不同单元格中,在记事本中显示的是一行中用逗号分隔. xls是excel专用格式,是二 ...
- python操作csv
# -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件的写入(按行写入) import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很 ...
- python操作MySQL数据库报错问题解决
编写好Python操作数据库的脚本后,运行报错如下: 报错1:“AttributeError: 'NoneType' object has no attribute 'encoding'” 解决办法: ...
- python操作三大主流数据库(6)python操作mysql⑥新闻管理后台功能的完善(增、ajax异步删除新闻、改、查)
python操作mysql⑥新闻管理后台功能的完善(增.删.改.查)安装表单验证D:\python\python_mysql_redis_mongodb\version02>pip instal ...
- python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件
python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...
随机推荐
- css布局学习笔记之max-width
设置块级元素的 width 可以阻止它从左到右撑满容器.然后你就可以设置左右外边距为 auto 来使其水平居中.元素会占据你所指定的宽度,然后剩余的宽度会一分为二成为左右外边距. div{ width ...
- PHP判断访客是否移动端浏览器访问
今天要给大家分享一段PHP代码,该代码的功能是用来判断访客是否移动端浏览器访问,该功能的实现思路是通过HTTP_X_WAP_PROFILE. HTTP_VIA.HTTP_USER_AGENT等信息来判 ...
- oc语言--protocol(协议)
一.protocol 1.基本用途 1> 可以用来声明很多方法,但是不能用来声明成员变量 2> 只要某个类遵守了这个协议,就相当于拥有这个协议中的所有方法声明 3> 只要父类遵守了某 ...
- Can't create/write to file '/tmp/#sql_3105_0.MYI' (Errcode: 13)
最近的项目中由于临时存储空间太大了.索性把tmp目录删除了.结果访问出现 Can't create/write to file '/tmp/#sql_3105_0.MYI' (Errcode: 13) ...
- 世纪大争论:Linux还是GNU/Linux?
我们在网上已经习惯用“Linux”来称呼Linux操作系统了,然而,偶尔也用“GNU/Linux”来称呼和指代同样的操作系统和软件.同时人们也在争论这两种称呼哪个更合适. 本文将不会选边站队,仅力图向 ...
- ArcGIS 栅格数据已加载后的获取
原文 http://www.cnblogs.com/zoe-j/archive/2012/02/16/2354037.html 简单记一下,最近开始做Arcgis engine的开发, 已经通过了to ...
- android 控件的移动
android 控件的移动 1. Java代码 imagebutton.setOnTouchListener(newOnTouchListener(){ int[]postion=newint[]{0 ...
- BFS visit tree
There are two ways to conduct BFS on tree. Solution 1 -- Given level Use recursion to find given lev ...
- 微信iOS WKWebview 网页开发适配指南
微信iOS客户端将于2017年3月1日前逐步升级为WKWebview内核,需要网页开发者提前做好网站的兼容检查和适配. 背景 WKWebView 是苹果在iOS 8中引入的新组件,目的是提供一个现代的 ...
- 【转】android 电池(二):android关机充电流程、充电画面显示
关键词:android 电池关机充电 androidboot.mode charger关机充电 充电画面显示 平台信息:内核:linux2.6/linux3.0系统:android/android4. ...