python技巧(四)格式文件
来源:互联网 发布:js确认框 编辑:程序博客网 时间:2024/05/29 19:43
1.如何读写CSV数据
使用标准库中的CSV模快
from urllib import urlretrieveurlretrieve('http://table.finance.yahoo.com/table.csv?s=000001.sz','pingan.csv')import csvrf = open('pingan.csv','rb')reader=csv.reader(rf)reader.next()wf = open('pingan_copy.csv','wb')writer =csv.writer(wf)writer.writerow(['Date','Open','Low','Close','Volume','Adj Close'])writer.writerow(reader.next())import csvwith open('pingan.csv','rb') as rf: reader = csv.reader(rf) with open('pingna2.csv','wb') as wf: writer = csv.writer(wf) headers = reader.next() writer.writerow(headers) for row in reader: if row[0]<'2016-01-01': break if int(row[5])>=50000000: writer.writerow(row)print 'end'
2.如何读写json数据
使用标准库中的json模快,其中loads,dumps函数可以完成json数据的读写
import jsonl =[1,2,'a',{'name':'bob'}]s = json.dumps(l)json.dumps(l,separators=[',',':'])json.dumps(l,sor_kets=True)l2=json.loads(s)with open('demo.json','wb') as f: json.dump(l,f)
3.如何解析简单的xml文档
使用标准库中的xml.etree.ElementTree,其中的parse函数可以解析xml文档
from xml.etree.ElementTree import parsef = open('demo.xml')et = parse(f)root = et.getroot()root.tagroot.attribroot.textroot.text.strip()root.getchildren()for child in root: print child.get('name')root.find('country')root.findall('country')root.iterfind('country')for e in root.iterfind('country'): print e.get('name')root.findall('rank')root.iter('rank')root.findall('country/*')root.findall('.//rank/..')root.findall('country[@name]')
4.如何构建xml文档
使用标准库中的xml.etree.ElementTree,构建ElementTree,使用write方法写入文件
from xml.etree.ElementTree import Element,ElementTreee=Element('Date')e.set('name','abc')from xml.etree.ElementTree import tostringtostring(e)e.text = '123'tostring(e)e2=Element('Row')e3=Element('Open')e3.text = '8.80'e2.append(e3)tostring(e2)e.append(e2)tostring(e)et=ElementTree(e)et.write('demo.xml')import csvfrom xml.etree.ElementTree import Element,ElementTreedef csvToxml(fname): with open(fname,'rb') as f: reader = csv.reader(f) headers = reader.next() root = Element('Data') for row in reader: eRow = Element('Row') root.append(eRow) for tag,text in zip(headers,row): e = Element(tag) e.text = text eRow.append(e) pretty(root) return ElementTree(root)et = csvToxml('pingan.csv')et.write('pingan.xml')def pretty(e,level=0): if len(e)>0: e.text = '\n'+'\t'+(level+1) for child in e: pretty(child,level+1) child.tail = child.tail[:-1] e.tail='\n'+'\t'*level
5.如何读写excel文件
利用Python读写excel
使用pip安装 pip install xlrd xlwt
使用第三方库xlrd和xlwt,这两个库分别用于excel读和写
import xlrdbook = xlrd.open_workbook('demo.xlsx')sheet = book.sheet_by_index(0)sheet.nrowssheet.ncolscell = sheet.cell(0,0)cell.ctypecell.valuesheet.cell(1,1)sheet.row_values(1)import xlwtwbook = xlwt.Workbook()#coding:utf8import xlrd, xlwtrbook = xlrd.open_workbook('demo.xlsx')rsheet = rbook.sheet_by_index(0)nc = rsheet.ncolsrsheet.put_cell(0, nc, xlrd.XL_CELL_TEXT, u'总分', None)for row in xrange(1, rsheet.nrows): t = sum(rsheet.row_values(row, 1)) rsheet.put_cell(row, nc, xlrd.XL_CELL_NUMBER, t, None)wbook = xlwt.Workbook()wsheet = wbook.add_sheet(rsheet.name)style = xlwt.easyxf('align: vertical center, horizontal center')for r in xrange(rsheet.nrows): for c in xrange(rsheet.ncols): wsheet.write(r, c, rsheet.cell_value(r, c), style)wbook.save('output.xlsx')
0 0
- python技巧(四)格式文件
- 仿百度文库解决方案(四)-调用swfTools把pdf格式文件转换成swf格式文件
- python写爬虫技巧(四):urllib2技巧与抓站技巧
- python解压缩ZIP格式文件
- Python--读取wav格式文件
- Python--生成Wav格式文件
- Python 处理 ini 格式文件
- python 读写csv格式文件
- Python读写json格式文件
- python 处理 excel格式文件
- python解析格式文件
- Python读写csv格式文件
- Python Mat格式文件读取
- python生成sitemap格式文件
- python实现csv格式文件转为asc格式文件
- Python怎么读写json格式文件
- python生成xml格式文件实例
- [python]csv格式文件的使用
- NYOJ65 - 另一种阶乘问题
- 大家在做网站时是否都遇到这样
- c#多线程(三):跨线程访问
- 三星Galaxy Note 7燃损原因水落石出
- LeetCode Rotate Image
- python技巧(四)格式文件
- android camera相机demo
- NYOJ833 - 取石子(七)
- 记录各个页面的停留时间 并且显示出来
- 记一个Vue项目的开发历程
- 无法获取globalasa文件中的变量值
- Trump就职演说
- 素数之和(筛法求素数)
- [在线等]1句算简单也算困难的SQL语句高手来下