當前位置: 首頁>>代碼示例>>Python>>正文


Python _markerlib.default_environment方法代碼示例

本文整理匯總了Python中_markerlib.default_environment方法的典型用法代碼示例。如果您正苦於以下問題:Python _markerlib.default_environment方法的具體用法?Python _markerlib.default_environment怎麽用?Python _markerlib.default_environment使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在_markerlib的用法示例。


在下文中一共展示了_markerlib.default_environment方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: _markerlib_evaluate

# 需要導入模塊: import _markerlib [as 別名]
# 或者: from _markerlib import default_environment [as 別名]
def _markerlib_evaluate(cls, text):
        """
        Evaluate a PEP 426 environment marker using markerlib.
        Return a boolean indicating the marker result in this environment.
        Raise SyntaxError if marker is invalid.
        """
        import _markerlib
        # markerlib implements Metadata 1.2 (PEP 345) environment markers.
        # Translate the variables to Metadata 2.0 (PEP 426).
        env = _markerlib.default_environment()
        for key in env.keys():
            new_key = key.replace('.', '_')
            env[new_key] = env.pop(key)
        try:
            result = _markerlib.interpret(text, env)
        except NameError:
            e = sys.exc_info()[1]
            raise SyntaxError(e.args[0])
        return result 
開發者ID:MayOneUS,項目名稱:pledgeservice,代碼行數:21,代碼來源:pkg_resources.py

示例2: _markerlib_evaluate

# 需要導入模塊: import _markerlib [as 別名]
# 或者: from _markerlib import default_environment [as 別名]
def _markerlib_evaluate(cls, text):
        """
        Evaluate a PEP 426 environment marker using markerlib.
        Return a boolean indicating the marker result in this environment.
        Raise SyntaxError if marker is invalid.
        """
        import _markerlib
        # markerlib implements Metadata 1.2 (PEP 345) environment markers.
        # Translate the variables to Metadata 2.0 (PEP 426).
        env = _markerlib.default_environment()
        for key in env.keys():
            new_key = key.replace('.', '_')
            env[new_key] = env.pop(key)
        try:
            result = _markerlib.interpret(text, env)
        except NameError as e:
            raise SyntaxError(e.args[0])
        return result 
開發者ID:chalasr,項目名稱:Flask-P2P,代碼行數:20,代碼來源:__init__.py

示例3: _markerlib_evaluate

# 需要導入模塊: import _markerlib [as 別名]
# 或者: from _markerlib import default_environment [as 別名]
def _markerlib_evaluate(cls, text):
        """
        Evaluate a PEP 426 environment marker using markerlib.
        Return a boolean indicating the marker result in this environment.
        Raise SyntaxError if marker is invalid.
        """
        import _markerlib

        env = cls._translate_metadata2(_markerlib.default_environment())
        try:
            result = _markerlib.interpret(text, env)
        except NameError as e:
            raise SyntaxError(e.args[0])
        return result 
開發者ID:awslabs,項目名稱:lambda-chef-node-cleanup,代碼行數:16,代碼來源:__init__.py

示例4: test_markers

# 需要導入模塊: import _markerlib [as 別名]
# 或者: from _markerlib import default_environment [as 別名]
def test_markers(self):
        from _markerlib import interpret, default_environment, compile
        
        os_name = os.name
        
        self.assertTrue(interpret(""))
        
        self.assertTrue(interpret("os.name != 'buuuu'"))
        self.assertTrue(interpret("os_name != 'buuuu'"))
        self.assertTrue(interpret("python_version > '1.0'"))
        self.assertTrue(interpret("python_version < '5.0'"))
        self.assertTrue(interpret("python_version <= '5.0'"))
        self.assertTrue(interpret("python_version >= '1.0'"))
        self.assertTrue(interpret("'%s' in os.name" % os_name))
        self.assertTrue(interpret("'%s' in os_name" % os_name))
        self.assertTrue(interpret("'buuuu' not in os.name"))
        
        self.assertFalse(interpret("os.name == 'buuuu'"))
        self.assertFalse(interpret("os_name == 'buuuu'"))
        self.assertFalse(interpret("python_version < '1.0'"))
        self.assertFalse(interpret("python_version > '5.0'"))
        self.assertFalse(interpret("python_version >= '5.0'"))
        self.assertFalse(interpret("python_version <= '1.0'"))
        self.assertFalse(interpret("'%s' not in os.name" % os_name))
        self.assertFalse(interpret("'buuuu' in os.name and python_version >= '5.0'"))    
        self.assertFalse(interpret("'buuuu' in os_name and python_version >= '5.0'"))    
        
        environment = default_environment()
        environment['extra'] = 'test'
        self.assertTrue(interpret("extra == 'test'", environment))
        self.assertFalse(interpret("extra == 'doc'", environment))
        
        def raises_nameError():
            try:
                interpret("python.version == '42'")
            except NameError:
                pass
            else:
                raise Exception("Expected NameError")
        
        raises_nameError()
        
        def raises_syntaxError():
            try:
                interpret("(x for x in (4,))")
            except SyntaxError:
                pass
            else:
                raise Exception("Expected SyntaxError")
            
        raises_syntaxError()
        
        statement = "python_version == '5'"
        self.assertEqual(compile(statement).__doc__, statement) 
開發者ID:MayOneUS,項目名稱:pledgeservice,代碼行數:56,代碼來源:test_markerlib.py


注:本文中的_markerlib.default_environment方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。