how to solve AttributeError: '_Environ' object has no attribute 'has_key'

后端 未结 1 1683
时光说笑
时光说笑 2020-12-20 17:40
def _is_dev_mode():
    # quick hack to check if the program is running in dev mode.
    # if \'has_key\' in os.environ  
    if os.environ.has_key(\'SERVER_SOFTWARE         


        
相关标签:
1条回答
  • 2020-12-20 17:47

    I supose you are working on python 3. In Python 2, dictionaries had a has_key() method. In Python 3, as the exception says, it no longer exists. You need to use the in operator:

    if 'SERVER_SOFTWARE' in os.environ
    

    here you have an example (py3k):

    >>> import os
    >>> if 'PROCESSOR_LEVEL' in os.environ: print(os.environ['PROCESSOR_LEVEL'])
    
    6
    >>> if os.environ.has_key('PROCESSOR_LEVEL'): print("fail")
    
    Traceback (most recent call last):
      File "<pyshell#18>", line 1, in <module>
        if os.environ.has_key('PROCESSOR_LEVEL'): print("fail")
    AttributeError: '_Environ' object has no attribute 'has_key'
    >>> 
    
    0 讨论(0)
提交回复
热议问题