python缩进问题?

shaode01 2013-08-29 09:32:38
#!/bin/env python
# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose: txt转换成Excel
# Author: zhoujy
# Created: 2013-05-07
# update: 2013-05-07
#-------------------------------------------------------------------------------
import datetime
import time
import os
import sys
import xlwt #需要的模块

def txt2xls(filename,xlsname): #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
print 'converting xls ... '
f = open(filename) #打开txt文本进行读取
x = 0 #在excel开始写的位置(y)
y = 0 #在excel开始写的位置(x)
xls=xlwt.Workbook()
sheet = xls.add_sheet('sheet1',cell_overwrite_ok=True) #生成excel的方法,声明excel
while True: #循环,读取文本里面的所有内容
line = f.readline() #一行一行读取
if not line: #如果没有内容,则退出循环
break
for i in line.split('\t'):#读取出相应的内容写到x
item=i.strip().decode('utf8')
sheet.write(x,y,item)
y += 1 #另起一列
x += 1 #另起一行
y = 0 #初始成第一列
f.close()
xls.save(xlsname+'.xls') #保存

if __name__ == "__main__":
filename = sys.argv[1]
xlsname = sys.argv[2]
txt2xls(filename,xlsname)


遇到错误
File "t2e.py", line 20
xls=xlwt.Workbook()
^
IndentationError: unexpected indent
求指正。
ps:flag我是想用来控制从第几行开始隔行读入的。
...全文
216 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ImN1 2013-08-29
  • 打赏
  • 举报
回复
引用 6 楼 shaode01 的回复:
[quote=引用 5 楼 snmr_com 的回复:] 基本上支持Python的编辑器,且带PEP8相关插件都能自动检查 执行到缩进结束,或遇到跳转的语句,如break, continue等
求推荐插件,用在linux环境下,vim编辑器上,这种插件用上会不会太苛刻?[/quote] 这环境不晓得,等其他人推荐吧 PEP8 Lint一般只是在编辑时起提示作用,不会令到代码运行不了的,而且估计也能自定义,去掉某些提示 像我这里ST就把每行80字符的限制去掉了,不提示
shaode01 2013-08-29
  • 打赏
  • 举报
回复
引用 5 楼 snmr_com 的回复:
基本上支持Python的编辑器,且带PEP8相关插件都能自动检查 执行到缩进结束,或遇到跳转的语句,如break, continue等
求推荐插件,用在linux环境下,vim编辑器上,这种插件用上会不会太苛刻?
ImN1 2013-08-29
  • 打赏
  • 举报
回复
基本上支持Python的编辑器,且带PEP8相关插件都能自动检查 执行到缩进结束,或遇到跳转的语句,如break, continue等
shaode01 2013-08-29
  • 打赏
  • 举报
回复
引用 3 楼 snmr_com 的回复:
xls那句除了等号前后没有空格不符合PEP8,到没见到错误 后面else就肯定缩进有误 是否空格和tab缩进混用了?
非常感谢,有么有可以检查这种缩进错误的编辑器或者方法?另外if语句最后一个else的执行范围到哪里?同一个缩进的都执行?直到遇到不同缩进量的代码块?
ImN1 2013-08-29
  • 打赏
  • 举报
回复
xls那句除了等号前后没有空格不符合PEP8,到没见到错误 后面else就肯定缩进有误 是否空格和tab缩进混用了?
shaode01 2013-08-29
  • 打赏
  • 举报
回复
#!/bin/env python
# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose:     txt转换成Excel
# Author:      zhoujy
# Created:     2013-05-07
# update:      2013-05-07
#-------------------------------------------------------------------------------
import datetime
import time
import os
import sys
import xlwt #需要的模块

def txt2xls(filename,xlsname):  #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
    print 'converting xls ... '
    f = open(filename)   #打开txt文本进行读取
    x = 0                #在excel开始写的位置(y)
    y = 0                #在excel开始写的位置(x)
	xls=xlwt.Workbook()
	sheet = xls.add_sheet('sheet1',cell_overwrite_ok=True) #生成excel的方法,声明excel
	flag = 0
	while True:  #循环,读取文本里面的所有内容
        flag+=1
		if flag<3: 
			line = f.readline() #一行一行读取
	    else:
		line = f.readline() #一行一行读取
		line=f.readline()
        if not line:  #如果没有内容,则退出循环
            break
        for i in line.split('\t'):#读取出相应的内容写到x
            item=i.strip().decode('gbk')
            sheet.write(x,y,item)
            y += 1 #另起一列
        x += 1 #另起一行
        y = 0  #初始成第一列
    f.close()
    xls.save(xlsname+'.xls') #保存

if __name__ == "__main__":
    filename = sys.argv[1]
    xlsname  = sys.argv[2]
    txt2xls(filename,xlsname)
shaode01 2013-08-29
  • 打赏
  • 举报
回复
错了错了,那是原始代码,没错的,我改了一下,才出现了错误。新手,求指教

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧