没啥 Python 经验 抄个合并 excel 代码改下老失败 求大佬帮忙

2017-12-18 21:19:45 +08:00
 glouhao
我想根据每一列的值,合并一堆 excel,可是老出问题,各种问题,求大神指点啊。
#!/usr/bin/env python
#coding=utf-8
import os
import xlrd
import xlwt

file = xlwt.Workbook()
ta = file.add_sheet('sheet1')
nr = 0
li = []
def isset(v):
try :
type (eval(v))
except :
return 0
else :
return 1

for fname in os.listdir("F:/同行交易记录 /直接搜索结果 /"):
#print(fname)
#print("F:/同行交易记录 /直接搜索结果 /"+fname)
lujing = "F:/同行交易记录 /直接搜索结果 /"+fname
data = xlrd.open_workbook(lujing)
table = data.sheet_by_index(0)
nrows = table.nrows
ncols = table.ncols
t = nrows
#print(table.row(0))
thead = table.row(0)
for x in range(len(thead)):
if str(thead[x]) == "text\:\'日期\'":
date = x
if str(thead[x]) == "text\:\'国内企业\'":
gnqy = x
if str(thead[x]) == "text\:\'日期\'":
gwqy = x
for i in range(nrows):
print(i)
if (isset("date")):
ta.write(nr+i-nrows+t,0,table.row(i)[date].value)
if (isset("gwqy")):
ta.write(nr+i-nrows+t,1,table.row(i)[gwqy].value)
if (isset("gnqy")):
ta.write(nr+i-nrows+t,2,table.row(i)[gnqy].value)
#li.append(table.row(i)[9].value)
nr += t
print(nr)
#print(li)
file.save('F:/同行交易记录 /直接搜索结果 /res.xls')
2151 次点击
所在节点    Python
10 条回复
Luckyray
2017-12-18 21:41:36 +08:00
给你点人生经验,提问题的姿势应该是:
我想想要做什么,遇到了什么问题,我做了哪些努力仍然没解决。
你把一个严重依赖缩进的语言的大段代码,扭作一团扔在这里,还期待别人给你回答?
glouhao
2017-12-18 21:45:32 +08:00
@Luckyray 没有的..... V2EX 的编辑模式不会用.... 没有出现缩进错误其实
CEBBCAT
2017-12-18 21:54:56 +08:00
可以用 gist 贴代码
shijingshijing
2017-12-18 22:00:19 +08:00
不明白这种东西为什么不用 VBA 来做,即使 python 是个瑞士军刀,你现在需要的是个合适的锤子啊。。。

而且这个缩进,你还是先买一把游标卡尺再来吧。。。。
lonccc
2017-12-19 10:25:00 +08:00
@glouhao 你自己是没有缩进错误,我们看着就没有缩进,这种代码我不知道谁会想多看一眼
ptrees
2017-12-19 12:06:30 +08:00
还是贴报错信息吧,调试程序都是看报错,不是直接看代码
congeec
2017-12-19 16:57:25 +08:00
都说 V2EX 对新人不友好,看楼上回答我觉得已经很有好了。这种问题要是在 stackoverflow 上,直接被 down 到没脸见人
glouhao
2017-12-19 23:04:40 +08:00
刚发的时候,发展换行都没了,编辑了下,发现缩进还是没有,想再~编辑下,发现没法编辑了,你们说我有啥办法……就会冷嘲热讽。嫌碍眼给我删了,也不用回了。
ppy
2017-12-27 15:06:20 +08:00
没啥 Python 经验就是你急于求成达到目的的理由吗,看看 xlrd xlwt 的文档自然就可以解决自己的问题。
glouhao
2017-12-28 13:04:13 +08:00
@ppy 已经解决了,就是不存在的变量报错的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/415796

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX