简单Python导入的语法错误
我的女朋友正试着跟着我,但她遇到了一个问题。我解决不了。刚开始时,需要创建一个在AppEngine上运行的“hello world”Python脚本 因此,文件: app.yaml:简单Python导入的语法错误,python,google-app-engine,python-2.7,Python,Google App Engine,Python 2.7,我的女朋友正试着跟着我,但她遇到了一个问题。我解决不了。刚开始时,需要创建一个在AppEngine上运行的“hello world”Python脚本 因此,文件: app.yaml: application: focus-invention-298 version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: helloworld.app helloworld.py: #
application: focus-invention-298
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.app
helloworld.py:
# -*- coding: utf8 -*-
import webapp2
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.write('Hello, Udacity!')
application = webapp2.WSGIApplication([('/', MainPage)], debug=True)
但是,当我运行应用程序(通过GUI启动器或使用dev_appserver.py)并在浏览器中打开应用程序时,我(在控制台中)会出现以下错误:
我们使用的是OSX 10.8.4,当我在终端上运行python时,它告诉我已经安装了2.7.2版本。AppEngine启动器(或SDK)版本为1.8.2
有人吗?我已经尝试了很多事情,但都没有成功,以至于我真的不知道该怎么做(我不是python开发人员),我真的想让这件事起作用,这样我的GF就可以继续学习:)在import
语句之前有字节(unicode非中断空格字符是主要候选字符)可能导致这种情况
检查前50个字节左右:
print repr(open('helloworld.py', 'rb').read(50))
例如,如果您看到类似于
'\xc2\xa0'
的序列,则其中包含UTF-8编码的不可中断空格字符。该文件是否已使用Windows行结尾保存?我想不会,因为她在Mac上完成了升华中的所有工作。但我会查一查的,这是一个很长的机会;但是在这里,import
的i
前面有一些字符脱离了Python;我无法使用文件中的\r\n
行结尾在Mac上重现该异常。请运行:print repr(open('helloworld.py','rb')。读取(50))
并将输出添加到您的问题中。干杯,我真的不知道他们是如何进入的。是的。无论如何,我的GF现在可以继续她的旅程,变得像我们没有工具一样沮丧:)\xc2
是UTF8序列的前导字节,它表示另一个字节是字符的一部分。NBSP字符通常出现在网页中,表示缩进(您通常不想在那里换行),它们是一种麻烦。
print repr(open('helloworld.py', 'rb').read(50))