# Python Version\n\n\xce\xbb python\nPython 3.7.0b5 (v3.7.0b5:abb8802389, May 31 2018, 01:54:01) [MSC v.1913 64 bit (AMD64)] on win32\nType "help", "copyright", "credits" or "license" for more information.\n>>>\n\n\n\n\n\xce\xbb pip3 install web.py\nCollecting web.py\n Using cached https://files.pythonhosted.org/packages/fc/58/21649fc1849b1f688f3d42e25e79615cc573469ea57eaa9e6af70b1e3b87/web.py-0.39.tar.gz\n Complete output from command python setup.py egg_info:\n Traceback (most recent call last):\n File "<string>", line 1, in <module>\n File "C:\\Users\\KARANJ~2\\AppData\\Local\\Temp\\pip-install-isj4gcc5\\web.py\\setup.py", line 6, in <module>\n from web import __version__\n File "C:\\Users\\KARANJ~2\\AppData\\Local\\Temp\\pip-install-isj4gcc5\\web.py\\web\\__init__.py", line 14, in <module>\n import utils, db, net, wsgi, http, webapi, httpserver, debugerror\n File "C:\\Users\\Karanjit Singh\\AppData\\Roaming\\Python\\Python37\\site-packages\\db\\__init__.py", line 69\n print "var", var\n ^\n SyntaxError: Missing parentheses in call to \'print\'. Did you mean print("var", var)?\n\n ----------------------------------------\nCommand "python setup.py egg_info" failed with error code 1 in C:\\Users\\KARANJ~2\\AppData\\Local\\Temp\\pip-install-isj4gcc5\\web.py\\\nRun Code Online (Sandbox Code Playgroud)\n
基本上,您正在尝试安装 Python 3.7 的模块,但该模块仅为 Python 2.x 设计。由于这些版本的 Python 在某些方面不兼容,因此您会收到错误。
在你的例子中,print "var", var是Python 2.x-only语法,它在Python 3.x中不起作用。
因此,要解决这个问题,您应该安装 Python 2.x 的模块pip install web.py。另一种选择是使用名为2to3的工具将模块的代码转换为 Python 3.x 语法,但是,如果模块使用一些严重依赖于仅 Python 2.x 功能的 C 扩展,则这可能没有帮助。
另外, web.py 的官方网站在首页上说:
上述版本 [0.39] 仅支持 Python 2。如果您寻求 Python 3 支持,请尝试实验版本。
Run Code Online (Sandbox Code Playgroud)pip install web.py==0.40-dev1
我想,他们的命令有点不正确,因为应该使用pip3,而不是pip。因此,如果您想要 Python 3 支持,请先尝试实验版本。