我对Python还不熟悉。我发现我的python代码返回不合理的return tab错误:
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
您的代码确实不一致地使用了制表符空间。当复制原始文章以升华文本3,然后选择所有行时,我可以同时看到制表符(行)和空格(点):
注意,我将tabs设置为expand to8 spaces,这也是Python所做的。请注意
msgs[..]
行现在甚至不再排成一行。在Python 3中混合使用制表符和空格进行缩进也是一个语法错误。将文本编辑器配置为在使用TAB键时插入空格。这是Python代码的推荐配置,因为tab宽度依赖于编辑器配置,而空格的宽度总是相同的。这是Python styleguide (PEP 8)建议的:
相关问题 更多 >
编程相关推荐