如何在python函数中定义字符串?

时间:2010-07-18 08:49:48

标签: python google-app-engine indentation syntax-error

我第一次玩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() 

1 个答案:

答案 0 :(得分:2)

Never mix tabs and spaces in python!

普遍接受的做法是使用4个空格进行缩进。这是用PEP 8编写的,python样式指南。我强烈建议你阅读它。

我通常设置我的编辑器用4个空格替换制表符,每个体面的文本编辑器都支持这个。

选项卡在您的示例中出现问题的原因是它们最多被8个空格替换,并且您的缩进大多数是4个空格(Python documentation