Python初学者请教:以下这段代码为什么会出错呢?

‘’
import logging;logging.basicConfig(level=logging.INFO)

import async, os, json, time
from datetime import datetime

from aiohttp import web

def index(request):
return web.Response(body=b’<h1>Awesome</h1>’)

@async.coroutine
def init(loop):
app = web.Application(loop=loop)
app.router.add_route(‘GET’, ‘/’, index)
srv = yield from loop.create_server(app.make_handler(),‘127.0.0.1’,9000)
logging.info(‘server started at http://127.0.0.1:9000…’)
return srv

loop = async.get_event_loop()
loop.run_until_complete(init(loop))
loop.run_forever()
"
运行上面的代码为什么会出现下面的错误?
srv=yield from loop.create_server(app.make_handler(),‘127.0.0.1’,9000)
^
SyntaxError: invalid syntax
Python初学者请教:以下这段代码为什么会出错呢?


15 回复

我无法理解你的问题

空格还是缩进?

invalid syntax

我没找到哪里缩进有问题……感觉自己好傻逼~

语法错误。我猜是 yield from 这里错了,但是我没有用过 Python3.5 的 async 和 aiohttp ,所以不清楚具体哪里错了

用的 python3 的接收器?

解释器

async def 后用 await

首先,你用的得是 python3
第二,你这代码哪里抄的,确定有 module 名字叫 async 吗。。。不应该是 asyncio 吗。。。

yield from?
多了 from 吧

廖雪峰 python 教程。。

另外,别听楼上那些说 yield from 的。。。这是合法关键字
https://www.python.org/dev/peps/pep-0380/
python 3.3 加入的
另外楼主要用 asyncio ,建议 python 3.5 以上

python3 环境下 使用 asyncio 就好了

有问题可以加我们的群问,这样效率更高,这个群是一群工程师组建的面向初学者的
Python Linux 学习群, qq 群号: 278529278 ,
Php Linux 学习群, qq 群号: 476648701 ,
非商业性质,拒绝广告,只接收真正想学这方面技术的朋友,交流学习,申请请说明来自 v2ex

回到顶部