【发布时间】:2016-05-23 20:04:09
【问题描述】:
我是 python 新手。我发现我的python代码返回不合理的返回选项卡错误:
msgs['to'] = "xxx@gmail.com"
^
TabError:缩进中制表符和空格的使用不一致
这是我的部分代码:
def send_email(self):
try:
msgs = MIMEMultipart()
msgs['to'] = "xxx"
msgs['from'] = "xxx"
msgs['subject'] = "abc"
msgs.attach(MIMEText(file("~/att1.py").read())
msgs.attach(MIMEText(file("~/att2.docx").read())
server = smtplib.SMTP()
server.connect('smtp.gmail.com:587')
server.login('xxx','xxx')
server.sendmail(msgs['from'], msgs['to'],msgs.as_string())
server.quit()
print "Successfully sent email"
return True
except SMTPException:
print "Error: unable to send email"
print str(SMTPException)
return False
【问题讨论】:
-
为什么不合理? Python 的解析器是一台机器,它不知道为什么。它发现一行使用制表符缩进,而其他行使用空格。删除标签,我会说。
-
我解决了这个问题,方法是在默认编辑器中打开 python 文件,然后使用编辑选择所有内容 -> 全选,在该格式之后 -> 取消制表符区域(以 8 个空格作为制表符)。这已经解决了问题。
标签: python smtp indentation