title: Takes exactly 3 arguments (4 given)
body: <p>i'm refactoring code in order to add object orientation and am just testing the code.</p>
  
  <pre><code>pattern = r"((([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])[ (\[]?(\.|dot)[ )\]]?){3}([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5]))"
  
  class Lineobject(object):
  
          def __init__(self, pattern, line):
              self.ip = self.getip(self, pattern, line)
  
          def getip (self, pattern, line):
                  for match in re.findall(pattern, line):
                      results = ''
                      ips = match[0]
                      usergeneratedblacklist.write(ips)
                      usergeneratedblacklist.write('\n')
                      return ips
  </code></pre>
  
  <p>When instantiating the class below I am getting an odd error. That of getip() takes exactly 3 arguments (4 given) which i do not know how to resolve.</p>
  
  <pre><code>for theline in f:
  
      if "Failed password" in theline:
  
          lineclass = Lineobject(pattern, theline)
  
      else:
          pass
  </code></pre>