python-3.3 - 运行脚本时出现 Python KeyError

标签 python-3.3

我正在运行下面的 python 脚本。

import cgi
import os
import time
import sys
import yate

print(yate.start_response('text/plain'))
addr=os.environ['REMOTE_ADDR']
host=os.environ['REMOTE_HOST']
method=os.environ['REQUEST_METHOD']
cur_time=time.asctime(time.localtime())
print(host+","+addr+","+cur_time+":"+method+":",end='',file=sys.stderr)

我收到以下错误。

    addr=os.environ['REMOTE_ADDR']
  File "C:\Python33\lib\os.py", line 676, in __getitem__
    raise KeyError(key) from None
KeyError: 'REMOTE_ADDR'

请帮帮忙....

最佳答案

您的脚本应该作为 CGI 运行由 Web 服务器编写的脚本,它设置环境变量,如 REMOTE_ADDRREQUEST_METHOD

您是自己运行脚本,这些环境变量不可用。这就是您收到 KeyError 的原因。

关于python-3.3 - 运行脚本时出现 Python KeyError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22727755/

相关文章:

python - 导入任意 python 源文件。 (Python 3.3+)

python - 'str' 对象在 Python3 中没有属性 'decode'

python - 对于 Python 3.3,如何使用一个 lambda 语句创建函数列表?

Python 3.3 PEP 418 示例给出 'namespace' 对象不可迭代错误

python - 用函数中的另一个字典替换字典的内容 - Python

python - 为什么用pip安装numpy会失败,而直接build却不会?

django - 升级到 Python 3.3 和设置 Django 的问题

python - 列出目录的所有文件名称到文本文件