我第一次玩Python和Google App Engine但是我无法在我的函数中定义一个字符串(mytest2),声明后我在行上出现了缩进错误。我可以在有效的参数中定义一个(测试),但是看不出为什么我不能在函数中做到这一点。
我在没有获得启发的情况下阅读了一些教程。谁能让我知道我错在哪里了?
我也想知道如何通过在类中定义mytest1之类的东西来实现这一点,然后在函数中访问它?
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class MainPage(webapp.RequestHandler):
#mytest1 = "test1"
#Runtime failure on this line talking about an indent issue
def get(self, test = 'testing!'):
mytest2= "test2" #Runtime failure on this line talking about an indent issue
self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write('Hello, webapp World!\n')
self.response.out.write(self)
#self.response.out.write('\n' + mytest1)
self.response.out.write('\n' + mytest2)
application = webapp.WSGIApplication(
[('/', MainPage)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
答案 0 :(得分:2)
Never mix tabs and spaces in python!
普遍接受的做法是使用4个空格进行缩进。这是用PEP 8编写的,python样式指南。我强烈建议你阅读它。
我通常设置我的编辑器用4个空格替换制表符,每个体面的文本编辑器都支持这个。
选项卡在您的示例中出现问题的原因是它们最多被8个空格替换,并且您的缩进大多数是4个空格(Python documentation)