Cloud 9的语法错误?

时间:2015-04-28 19:21:14

标签: python cloud9-ide

我是Cloud 9的新手,并制作了一个脚本。我希望代码显示在网址https://python-william1835.c9.io,我收到以下消息:

Important: use os.getenv(PORT, 8080) as the port and os.getenv(IP,0.0.0.0) as the host in your scripts!

我跑的时候。

所以我把它放在脚本中(当然还有import os)。当我再次运行时,它说:

File "/home/ubuntu/workspace/Python Projects/Python Enigma Program/main.py", line 14                                                                                
os.getenv(IP, 0.0.0.0)                                                                                                                                            
                  ^                                                                                                                                               
SyntaxError: invalid syntax

你能告诉我它为什么这样做吗?

1 个答案:

答案 0 :(得分:0)

您收到SyntaxError,因为文字0.0.0.0在语法上无效。

在这种特定情况下,您收到的消息有点误导。此外,os.getenv is unfortunately not as verbose as one would want 的文档页面。

但是,如果您查看getenv source code ,您会发现所有参数都必须是str类型:

def getenv(key, default=None):
    """Get an environment variable, return None if it doesn't exist.
    The optional second argument can specify an alternate default.
    key, default and the result are str."""
    return environ.get(key, default)

将您的来电更改为:

os.getenv("PORT", "8080") 
os.getenv("IP", "0.0.0.0")

应该有效,你应该没有问题。