当前位置: 首页 > news >正文

想学做网站学什么教程/网络推广哪个平台最好

想学做网站学什么教程,网络推广哪个平台最好,脑叶公司手机版下载,驻马店哪家做网站好2019独角兽企业重金招聘Python工程师标准>>> 我的excel文件结构: 学习了xlrd如何操作excel文件、python读写txt文件、jason.dumps()转换dict为string类型之后,进行了第一次尝试。 第一次尝试: import xlrd import jsondata xlrd…

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

我的excel文件结构:

160505_twsM_1165991.png

学习了xlrd如何操作excel文件、python读写txt文件、jason.dumps()转换dict为string类型之后,进行了第一次尝试。

第一次尝试: 

import xlrd
import jsondata = xlrd.open_workbook('test.xlsx')#打开excel文件table = data.sheet_by_name(u'Sheet1')#通过名称获取excel表nrows = table.nrows
final_obj={}
for i in range(nrows):cur_row = table.row_values(i)first = str(cur_row[0])if first:final_obj[first] = []for j in range(1,len(cur_row)):if cur_row[j]:final_obj[first].append(cur_row[j])final_str = json.dumps(final_obj)
print(final_str)file = open('test.txt', 'w')
file.write(final_str)
file.close()

160425_llfj_1165991.png

通过第一次尝试的代码得到了上面的内容(内容其实已经保存在txt里面,打印在屏幕上是为了方便查看结果),得出如下结论:

  1. 数字的字面类型与excel里面的类型不一致;
  2. 没有按照顺序存储数据,这主要是dict类型不分先后的原因,对于数据影响不大,但可读性较差。

接下来主要解决问题1:

import xlrd
import jsondata = xlrd.open_workbook('test.xlsx')#打开excel文件table = data.sheet_by_name(u'Sheet1')#通过名称获取excel表nrows = table.nrows
final_obj={}
for i in range(nrows):cur_row = table.row_values(i)#我已经通过pirnt(cur_row[0])得知excel中的数字获得后为浮点型,判断它是否为浮点型且能够整除if type(cur_row[0]) == type(1.1) and cur_row[0]%1 == 0:first = str(int(cur_row[0]))else:first = str(cur_row[0])if first:final_obj[first] = []for j in range(1,len(cur_row)):if cur_row[j]:if type(cur_row[j]) == type(1.1) and cur_row[j]%1 == 0:cur_value = str(int(cur_row[j]))else:cur_value = str(cur_row[j])final_obj[first].append(cur_value)final_str = json.dumps(final_obj)
print(final_str)file = open('test.txt', 'w')
file.write(final_str)
file.close()

162345_bdqc_1165991.png

这次得到了相对正确的数字,当我修改了我的excel文件内容时:

162942_jg0y_1165991.png

162953_wSv6_1165991.png

163233_ZkXW_1165991.png

163246_Xxtb_1165991.png

根据测试,判断我对excel中的获得的浮点数的转换基本是对的,但也不能保证完全正确。

上面的代码每次遇到这种数字都需要做判断,我希望能够定义一个函数,可以重复用于转换数据

import xlrd
import jsondata = xlrd.open_workbook('test.xlsx')#打开excel文件
table = data.sheet_by_name(u'Sheet1')#通过名称获取excel表nrows = table.nrows
final_obj={}
for i in range(nrows):cur_row = table.row_values(i)first = toIntString(cur_row[0])if first:final_obj[first] = []for j in range(1,len(cur_row)):if cur_row[j]:final_obj[first].append(toIntString(cur_row[j]))final_str = json.dumps(final_obj)
print(final_str)file = open('test.txt', 'w')
file.write(final_str)
file.close()def toIntString(value):result = ""if type(value) == type(1.1) and value%1 == 0:result = str(int(value))else:result = str(value)return result

163915_Lzen_1165991.png

显然是定义函数的代码写在了调用函数部分的内容下面造成的,然而人家JavaScript是可以这么干的,不爽!

import xlrd
import jsondef toIntString(value):result = ""if type(value) == type(1.1) and value%1 == 0:result = str(int(value))else:result = str(value)return resultdata = xlrd.open_workbook('test.xlsx')#打开excel文件
table = data.sheet_by_name(u'Sheet1')#通过名称获取excel表nrows = table.nrows
final_obj={}
for i in range(nrows):cur_row = table.row_values(i)first = toIntString(cur_row[0])if first:final_obj[first] = []for j in range(1,len(cur_row)):if cur_row[j]:final_obj[first].append(toIntString(cur_row[j]))final_str = json.dumps(final_obj)
print(final_str)file = open('test.txt', 'w')
file.write(final_str)
file.close()

164117_LuVH_1165991.png

成功!

 

最后的疑问:

  • 关于如何判断字符串"1.0"或"abc"(二者均有可能出现)为整数我没有找到合适的解决方法,难道只能用try…except…来解决int(str)造成的异常么?
  • 结果应该为0.2:

            164626_Cl93_1165991.png

  • 一个不和谐的方法eval(),本来打算用来转换数字的:

            165450_vAME_1165991.png

  • python里面的除法总是保留1位小数:

            165644_h9eN_1165991.png

参考:

  1. https://my.oschina.net/u/1165991/blog/742587
  2. http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html【python操作Excel读写--使用xlrd】
  3. http://blog.sina.com.cn/s/blog_4ddef8f80102v8af.html【JSON:  Python Objects与String之间转换】

转载于:https://my.oschina.net/u/1165991/blog/749790

http://www.lbrq.cn/news/1277443.html

相关文章:

  • 黄冈网站推广都有哪些渠道/百度一下官方网站
  • 上海 企业网站建设/短视频推广引流方案
  • 网络营销导向企业网站建设的原则包括/西安seo外包行者seo06
  • 网站流量一直下降/去了外包简历就毁了吗
  • 网站建设谈判技巧/推广网站都有哪些
  • 淮安市城市建设档案馆网站/完整的品牌推广方案
  • 厦门今天刚刚发生的新闻/seo推广怎么做视频教程
  • 花生壳做网站/免费舆情监测平台
  • 做网页设计网站有哪些/邯郸seo优化
  • 手机触屏网站开发/西安seo优化培训机构
  • 网站首页被k 不恢复/上往建站
  • 重新安wordpress网站/seo优化教程下载
  • 网站建设中的需求报告功能/推广app接单网
  • bootstrap建设淘宝网站/自己怎么做一个网页
  • 百度联盟做网站赚钱吗/图片百度搜索
  • 银川森林半岛/深圳seo优化服务商
  • 网站维护什么情况/周口搜索引擎优化
  • 外贸快车做网站怎么样/营销的三个基本概念是什么
  • 中央政府网站建设管理办法/怎么接游戏推广的业务
  • 猪八戒网怎么做网站/网络整合营销
  • 百度优化怎么做/seo视频
  • 网站建设技术方面/私人做网站的流程
  • 群辉怎么做视频网站/青岛快速排名优化
  • 建立网站的公司杭州/网站关键词优化教程
  • 360路由器做网站/哈尔滨推广优化公司
  • 无锡网站建设服务公司/互联网营销师是做什么的
  • 深圳哪里做网站/在线seo
  • 动易网站模板下载/百度网站
  • 昆明响应式网站/网站维护推广的方案
  • 建设集团招聘/百度sem优化师
  • MongoDB系列教程-教程概述
  • 新升级超值型系列32位单片机MM32G0005
  • buuctf_crypto26-30
  • 数据结构(5)单链表算法题(中)
  • 【lucene】currentFrame与staticFrame
  • 坚鹏:AI智能体培训是知行学成为AI智能体创新应用引领者的基础