Package fuzzy :: Package operator :: Module Not
[hide private]
[frames] | no frames]

Source Code for Module fuzzy.operator.Not

 1  # -*- coding: utf-8 -*- 
 2  # 
 3  # Copyright (C) 2009  Rene Liebscher 
 4  # 
 5  # This program is free software; you can redistribute it and/or modify it under 
 6  # the terms of the GNU Lesser General Public License as published by the Free  
 7  # Software Foundation; either version 3 of the License, or (at your option) any 
 8  # later version. 
 9  # 
10  # This program is distributed in the hope that it will be useful, but WITHOUT  
11  # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
12  # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 
13  # details. 
14  #  
15  # You should have received a copy of the GNU Lesser General Public License 
16  # along with this program; if not, see <http://www.gnu.org/licenses/>.  
17  # 
18  """Operator class which takes value of input operator and calculates complement of it.""" 
19  __revision__ = "$Id: Not.py,v 1.18 2013-01-09 20:10:19 rliebscher Exp $" 
20   
21  from fuzzy.operator.Operator import Operator 
22   
23 -class Not(Operator): # pylint: disable=R0903
24 """Take value of input operator and calculate complement of it. 25 26 @ivar input: input which result is to complement. 27 @type input: L{fuzzy.operator.Operator.Operator} 28 """ 29
30 - def __init__(self, input):
31 """Constructor. 32 33 @param input: input which result is to complement. 34 @type input: L{fuzzy.operator.Operator.Operator} 35 """ 36 super(Not, self).__init__() 37 self.input = input
38
39 - def __call__(self):
40 """Get input value and return 1.0-value.""" 41 return 1.0 - self.input()
42
43 - def __repr__(self):
44 """Return representation of instance. 45 46 @return: representation of instance 47 @rtype: string 48 """ 49 return "%s.%s(%s)" % (self.__class__.__module__, self.__class__.__name__, repr(self.input))
50