github/python/ show me the code 25题(二)
2016-04-23 21:46
615 查看
第 0014 题: 纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示:
请将上述内容写到 student.xls 文件中,如下图所示:
xls文件的读写,涉及到了xlwt,xlrd等库。这个题目把字典信息写入xls文件。
利用json将信息结构化的读入,再用xlrt写进空的xls文件里
第 0015 题: 纯文本文件 city.txt为城市信息, 里面的内容(包括花括号)如下所示:
这个题和上面没什么不一样,代码就不放了。[/code]
第 0016 题: 纯文本文件 numbers.txt, 里面的内容(包括方括号)如下所示:
json.loads是个蛮神奇的函数对吧,它可以识别出你的文本究竟是个什么样的结构,是个字典,还是一个序列?
上面的两道题里,文本都是字典信息,所以在代码中为了便于理解,将变量名就起为了dict,同时这个dict也的确是个dict,在写入的时候,就是按dict的用法,将信息写入xls。
这道题的道理也是一样,重点还是理解dict和list的结构与用法。
第 0017 题: 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如
下所示:
这里说句实在话,python里读写主要就是看库与接口,另一个就是要看相关文件的结构。
我对xml基本是不了解,所以也就不展开说明了。
第 0018 题: 将 第 0015 题中的 city.xls 文件中的内容写到 city.xml 文件中,如下所示:
第 0019 题: 将 第 0016 题中的 numbers.xls 文件中的内容写到 numbers.xml 文件中,如下
所示:
{ "1":["张三",150,120,100], "2":["李四",90,99,95], "3":["王五",60,66,68] }
请将上述内容写到 student.xls 文件中,如下图所示:
#coding:utf-8 #!/usr/bin/python import sys,os import json import xlwt #f = open('students.txt') with open (os.getcwd()+'\students.txt') as f: dict = json.loads(f.read().decode('gbk')) #json对应到python就是dict类型 xls = xlwt.Workbook() #创建一个xls对象 sheet = xls.add_sheet('student') for i in range(len(dict.keys())): row = i col = 0 sheet.write(row,col,dict.keys()[i]) for j in dict[dict.keys()[i]]: col += 1 sheet.write(row,col,j) xls.save(os.getcwd()+'\student.xls')
xls文件的读写,涉及到了xlwt,xlrd等库。这个题目把字典信息写入xls文件。
利用json将信息结构化的读入,再用xlrt写进空的xls文件里
第 0015 题: 纯文本文件 city.txt为城市信息, 里面的内容(包括花括号)如下所示:
{ "1" : "上海", "2" : "北京", "3" : "成都" }
这个题和上面没什么不一样,代码就不放了。[/code]
第 0016 题: 纯文本文件 numbers.txt, 里面的内容(包括方括号)如下所示:
[ [1, 82, 65535], [20, 90, 13], [26, 809, 1024] ] 注意这次的文本,实际上是个元素为序列的序列
#coding:utf-8 import os,json import xlwt with open(os.getcwd()+'/numbers.txt') as f: list = json.loads(f.read().decode('gbk')) xls = xlwt.Workbook() sheet = xls.add_sheet('city') #只有sheet才可以写 for i in range(len(list)): col = 0 for j in list[i]: sheet.write(i,col,j) col += 1 xls.save(os.getcwd()+'/number.xls')
json.loads是个蛮神奇的函数对吧,它可以识别出你的文本究竟是个什么样的结构,是个字典,还是一个序列?
上面的两道题里,文本都是字典信息,所以在代码中为了便于理解,将变量名就起为了dict,同时这个dict也的确是个dict,在写入的时候,就是按dict的用法,将信息写入xls。
这道题的道理也是一样,重点还是理解dict和list的结构与用法。
第 0017 题: 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如
下所示:
<?xml version="1.0" encoding="UTF-8"?> <root> <students> <!-- 学生信息表 "id" : [名字, 数学, 语文, 英文] --> { "1" : ["张三", 150, 120, 100], "2" : ["李四", 90, 99, 95], "3" : ["王五", 60, 66, 68] } </students> </root>
哇塞,直接就从dict,list跳到了xml????? git页面里已经给了相关资料的链接:http://www.cnblogs.com/skynet/archive/2013/05/06/3063245.html
#coding:utf-8 import xlrd import os,json from lxml import etree xls = xlrd.open_workbook(os.getcwd()+'\student.xls') sheet = xls.sheet_by_name("student") Dict = {} for row in range(sheet.nrows): Attr = sheet.row_values(row) ##此处用法 Dict[Attr[0]] = Attr[1:] #形成key-value对 #如何操作xml root = etree.Element('root') child1 = etree.SubElement(root,"student") comm = etree.Comment(u'学生信息表 "id":[名字,数学,名字,英文]') child1.append(comm) child1.text = unicode(json.dumps(Dict).decode('gbk')) print child1.text.decode('gbk') tree = etree.ElementTree(root) tree.write(os.getcwd()+'\student.xml')
这里说句实在话,python里读写主要就是看库与接口,另一个就是要看相关文件的结构。
我对xml基本是不了解,所以也就不展开说明了。
第 0018 题: 将 第 0015 题中的 city.xls 文件中的内容写到 city.xml 文件中,如下所示:
<?xmlversion="1.0" encoding="UTF-8"?>
<root>
<citys>
<!--
城市信息
-->
{ "1" : "上海", "2" : "北京", "3" : "成都" }</citys>
</root>
#coding:utf-8 import xlrd import os,json from lxml import etree xls = xlrd.open_workbook(os.getcwd()+'\city.xls') sheet = xls.sheet_by_name("city") Dict = {} for row in range(sheet.nrows): Attr = sheet.row_values(row) ##此处用法 Dict[Attr[0]] = Attr[1:] #形成key-value对 #如何操作xml root = etree.Element('root') child1 = etree.SubElement(root,"numbers") comm = etree.Comment(u'城市信息') child1.append(comm) child1.text = unicode(json.dumps(Dict).decode('gbk')) print child1.text.decode('gbk') tree = etree.ElementTree(root) tree.write(os.getcwd()+'\city.xml')
第 0019 题: 将 第 0016 题中的 numbers.xls 文件中的内容写到 numbers.xml 文件中,如下
所示:
<?xml version="1.0" encoding="UTF-8"?> <root> <numbers> <!-- 数字信息 --> [ [1, 82, 65535], [20, 90, 13], [26, 809, 1024] ] </numbers> </root>
#coding:utf-8 import xlrd import os,json from lxml import etree xls = xlrd.open_workbook(os.getcwd()+'/number.xls') sheet = xls.sheet_by_name("city") List = {} for row in range(sheet.nrows): Attr = sheet.row_values(row) ##此处用法 List[row] = Attr #形成key-value对 #如何操作xml root = etree.Element('root') child1 = etree.SubElement(root,"numbers") comm = etree.Comment(u'数字信息') child1.append(comm) child1.text = unicode(json.dumps(List).decode('gbk')) print child1.text.decode('gbk') tree = etree.ElementTree(root) tree.write(os.getcwd()+'/number.xml')
相关文章推荐
- python初学者常见问题汇总(留作日后参考)
- R + python︱数据规范化、归一化、Z-Score
- python设计模式之装饰器模式
- Probability And Statistics In Python:Distributions And Sampling
- python 中的 空 无 None True 之间的理解和应用
- Python爬虫开发
- Python按行读文件
- python内置函数proprety()
- python内置函数super()
- python内置函数__import__
- python内置函数
- Python 程序设计语言 笔记(七)
- win7的64位python2.7的pip和mysql-python安装
- Probability And Statistics In Python: Linear Regression
- Python学习笔记07
- [python]爬代理ip v2.0(未完待续)
- python中的json模块
- 利用Python与HFSS联合仿真设计一个微带天线
- Python实现用filter()过滤出1~100中平方根是整数的数
- python时间处理模块 datetime time模块 deltetime模块